Mako est une bibliothèque de modèles écrite en Python. Les modèles Mako sont utilisés pour générer dynamiquement des sorties textuelles, typiquement HTML, XML, ou d'autres langages de balisage. L'extension de fichier 'mako' signale un fichier contenant un modèle Mako. Ces modèles intègrent directement du code Python au sein du texte, permettant la génération de contenu dynamique basée sur des variables, des boucles, des instructions conditionnelles et d'autres constructions Python. Les modèles Mako sont souvent employés dans des frameworks de développement web tels que Pyramid et Pylons pour séparer la logique de présentation de la logique applicative. Ils offrent une manière flexible et puissante de créer des pages web dynamiques et d'autres sorties textuelles. Les modèles sont traités par le moteur de rendu Mako, qui interprète le code Python et génère la sortie finale. Mako prend en charge des fonctionnalités telles que l'héritage de modèles, la mise en cache (caching) 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.