Mako è una libreria di template (modelli) scritta in Python. I template Mako sono utilizzati per generare output di testo in modo dinamico, tipicamente per la creazione di HTML, XML o altri linguaggi di markup. L'estensione di file '.mako' identifica un file contenente un template Mako. Questi template sono caratterizzati dalla capacità di incorporare codice Python direttamente all'interno del testo, permettendo la generazione dinamica di contenuti basata sull'uso di variabili, cicli (loops), istruzioni condizionali (conditional statements) e altri costrutti nativi di Python. I template Mako sono frequentemente impiegati in framework di sviluppo web come Pyramid e Pylons, dove sono essenziali per separare efficacemente la logica di presentazione (presentation logic) dalla logica applicativa (application logic). Essi offrono un metodo flessibile e potente per la creazione di pagine web dinamiche e altri output testuali. L'elaborazione dei template è gestita dal motore di template Mako (Mako template engine), che interpreta il codice Python e produce l'output finale. Mako supporta funzionalità avanzate come l'ereditarietà dei template (template inheritance), il caching e la precompilazione (precompilation) per ottimizzare le prestazioni. È rinomato per la sua velocità e flessibilità, rendendolo una scelta popolare per la generazione di contenuti dinamici nelle applicazioni Python. La sua sintassi è progettata per essere relativamente intuitiva per gli sviluppatori che hanno già familiarità con il linguaggio Python.