skillfed

jinjanator-plugins

Package which provides the plugin API for the jinjanator tool

jinjanator-plugins v25.1.0 1.1M downloads/30d#4,347 on PyPI3
Permissive license Apache-2.0 Active released

What it is and what it does

jinjanator-plugins is an API package that defines the contract for extending the jinjanator tool through plugins. It provides decorators and exception classes that plugin developers use to hook custom functionality into jinjanator's template processing pipeline. Plugins can contribute data format parsers, Jinja2 filters, tests, globals, and extensions—all discovered and loaded automatically via Python entry points.

This package is not meant to be installed directly by end users; instead, it serves as a dependency for plugin packages. Plugin developers import from it to mark their hook functions and define format classes. The package itself is lightweight, depending only on attrs, pluggy, and typing-extensions, and supports Python 3.10 through 3.14. It is actively maintained and carries no known security vulnerabilities.

Use it for:

  • Develop a custom data format parser plugin to allow jinjanator to read proprietary or domain-specific file formats.
  • Create filter functions in a plugin to add domain-specific transformations available in Jinja2 templates.
  • Build a plugin that registers test functions for conditional logic in templates (e.g., custom validation checks).
  • Extend jinjanator with a plugin that provides global functions to fetch data from external APIs or databases.
  • Package a plugin that adds Jinja2 extensions to enable new template syntax or capabilities.

Worth the install?

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

Provides the plugin API and hook decorators that allow developers to extend the jinjanator tool with custom formats, filters, tests, globals, and Jinja2 extensions.

Yes, if you are developing a plugin for jinjanator. This package is essential for plugin authors and should be pinned to a specific version in your plugin's dependencies to avoid API breakage. For end users of jinjanator who are not writing plugins, there is no need to install it directly. No security concerns; actively maintained.

Install

jinjanator-plugins on PyPI

pip

pip install jinjanator-plugins

uv

uv add jinjanator-plugins

poetry

poetry add jinjanator-plugins

Installing jinjanator-plugins

Before you install

Low install friction with three lightweight runtime dependencies (attrs, pluggy, typing-extensions). Actively maintained with a recent release; the repo shows ongoing development. The package explicitly recommends pinning to a narrow version range to avoid API breakage.

License in practice

Apache-2.0 permissive license allows use in commercial and open-source projects with minimal restrictions; you must include a copy of the license and note any modifications.

Quickstart

# Install as a dependency of your plugin package
# In your plugin's pyproject.toml:
# dependencies = ["jinjanator-plugins==25.1.0"]

# In your plugin module:
from jinjanator_plugins import (
    plugin_filters_hook,
    plugin_formats_hook,
)

@plugin_filters_hook
def plugin_filters():
    return {"my_filter": my_filter_function}

@plugin_formats_hook
def plugin_formats():
    return {"my_format": MyFormatClass}

Requires Python 3.10 or later. Plugins must be installed into the same environment as jinjanator itself and registered via entry points in pyproject.toml.

Verify before relying

  • Whether the package maintains backward compatibility across minor version updates despite the recommendation to pin versions narrowly.
  • Performance characteristics when a plugin provides many filters, tests, or formats simultaneously.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 3 — attrs, pluggy, typing-extensions
Maintenance actively maintained — 300 days since the last release
Last repo commit
First released
Downloads 1,117,545/month — #4,347 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: jinjanator_plugins-25.1.0-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

jinjanator plugin developmentjinja2 template plugin apicustom format parserstemplate filter extensionsplugin hook decorators
plugin-frameworkjinja2-extensiontemplate-processing

More Application Frameworks packages