Mako est une bibliothèque de modèles (template library) écrite en Python. Les modèles Mako sont utilisés pour générer dynamiquement des sorties textuelles, généralement du HTML, du XML ou d'autres langages de balisage. L'extension de fichier « .mako » désigne un fichier contenant un modèle Mako. Ces modèles intègrent directement du code Python dans le texte, permettant la génération de contenu dynamique basée sur des variables, des boucles, des instructions conditionnelles et d'autres structures Python. Les modèles Mako sont fréquemment utilisés dans des frameworks de développement web tels que Pyramid et Pylons afin de séparer la logique de présentation de la logique applicative. Ils offrent un moyen flexible et puissant de créer des pages web dynamiques et d'autres sorties textuelles. Les modèles sont traités par le moteur de modèles Mako, qui interprète le code Python et génère le résultat final. Mako prend en charge des fonctionnalités telles que l'héritage de modèles, la mise en cache et la précompilation pour améliorer les performances. Il est reconnu pour sa rapidité et sa flexibilité, ce qui en fait un choix populaire pour la génération de contenu dynamique dans les applications Python. La syntaxe est conçue pour être relativement facile à apprendre pour les développeurs familiers avec Python.