skillfed

jinjanator

Command-line interface to Jinja2 for templating in shell scripts.

jinjanator v25.3.1 1.1M downloads/30d#4,327 on PyPI136
Permissive license Apache-2.0 Active released

What it is and what it does

Jinjanator is a command-line wrapper around Jinja2 that lets you render templates from the shell or in scripts. It reads a Jinja2 template file and combines it with data from multiple sources—JSON, YAML, INI files, dotenv files, or environment variables—then outputs the rendered result. The tool is designed for configuration generation, infrastructure-as-code workflows, and any scenario where you need templating outside a Python application.

The package depends on Jinja2, attrs, PyYAML, python-dotenv, typing-extensions, and its own plugin system (jinjanator-plugins). It supports custom Jinja2 filters and tests via Python files, and can be extended with plugins that add new data formats or template functions. The tool is actively maintained, supports modern Python versions, and carries no known security vulnerabilities.

Use it for:

  • Generate NGINX or Apache configuration files from templates with environment-specific data in JSON or YAML.
  • Render Kubernetes manifests or Terraform configurations using templated definitions and variable files.
  • Create dotenv or shell configuration files by templating environment variables and secrets.
  • Build infrastructure-as-code pipelines that need to generate config files from data sources in CI/CD workflows.
  • Render email templates, documentation, or other text output from structured data in shell scripts.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

A command-line tool that renders Jinja2 templates using data from INI, YAML, JSON, or environment variables, with support for custom filters, tests, and plugins.

Yes. Jinjanator is a stable, actively maintained tool with low install friction and no security vulnerabilities. It fills a clear niche for command-line template rendering and is well-suited for infrastructure automation, config generation, and shell-based workflows. The permissive Apache-2.0 license and support for current Python versions make it a low-risk dependency. Install it if you need Jinja2 templating outside a Python application.

Install

jinjanator on PyPI

pip

pip install jinjanator

uv

uv add jinjanator

poetry

poetry add jinjanator

Installing jinjanator

Before you install

Low friction installation as a pure Python wheel. Actively maintained with recent releases; last commit was 2026-08-02 and the package is marked as Production/Stable. Supports current Python versions (3.10 through 3.14).

License in practice

Licensed under Apache-2.0 (permissive), allowing use in most projects without significant restrictions. You may use, modify, and distribute the software freely provided you include the license and notice of changes.

Quickstart

pip install jinjanator

# Render template with JSON data
jinjanate config.j2 data.json > output.conf

# Or use environment variables
export HOSTNAME=localhost
jinjanate config.j2

Requires Python 3.10 or later.

Verify before relying

  • Whether plugin ecosystem is actively maintained and whether available plugins cover your use cases.
  • Performance characteristics when rendering large templates or processing large data files.
  • Exact behavior of the --customize option and whether custom Python code execution poses security concerns in your environment.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 6 — attrs, jinja2, jinjanator-plugins, python-dotenv, pyyaml, typing-extensions
Maintenance actively maintained — 233 days since the last release
Last repo commit
First released
Downloads 1,126,178/month — #4,327 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: jinjanator-25.3.1-py3-none-any.whl

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersIntended Audience :: System AdministratorsNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Typing :: Typed

Tags

jinja2 template rendering clicommand line template engineyaml json template processorenvironment variable templatingconfiguration file generatorjinja2 cli tooltemplate rendering from shell
cli-tooltemplate-engineinfrastructure-automation

More Markup packages