Jinja (template engine)

Jinja
Original author(s)Armin Ronacher
Initial releaseJuly 17, 2008; 16 years ago (2008-07-17)[1]
Stable release
3.1.4[2] Edit this on Wikidata / 5 May 2024; 6 months ago (5 May 2024)
Repository
Written inPython
TypeTemplate engine
LicenseBSD License
Websitepalletsprojects.com/p/jinja/ Edit this on Wikidata

Jinja is a web template engine for the Python programming language. It was created by Armin Ronacher and is licensed under a BSD License. Jinja is similar to the Django template engine, but provides Python-like expressions while ensuring that the templates are evaluated in a sandbox. It is a text-based template language and thus can be used to generate any markup as well as source code.

The Jinja template engine allows customization of tags,[3] filters (for formatting or transforming values[4]), tests (for evaluating conditions[4]), and globals.[5] Also, unlike the Django template engine, Jinja allows the template designer to call functions with arguments on objects. Jinja is Flask's default template engine [6] and it is also used by Ansible,[7] Trac, and Salt.[8] It is also used to make SQL macros, for example for use with dbt.[9]

  1. ^ "Jinja2 Release History". Retrieved 24 June 2020.
  2. ^ "Release 3.1.4". 5 May 2024. Retrieved 23 May 2024.
  3. ^ "Extensions". Jinja2 Documentation (2.8-dev). Retrieved 2015-05-26.
  4. ^ a b "Jinja built-in filters and tests (like Django filters)". www.webforefront.com. Retrieved 2023-08-14.
  5. ^ "Extensions". Jinja2 Documentation (2.8-dev). Retrieved 2015-05-26.
  6. ^ DuPlain, R. (2013). Instant Flask Web Development. Packt Publishing. p. 30. ISBN 978-1-78216-963-5. Retrieved 2015-05-26.
  7. ^ "Templating (Jinja2) — Ansible Documentation".
  8. ^ "Understanding Jinja". docs.saltproject.io.
  9. ^ Jinja and macros | dbt Developer Hub