Metadata-Version: 2.1
Name: makejinja
Version: 0.6.0
Summary: Automatically generate files based on Jinja templates. Use it to easily generate complex Home Assistant dashboards!
Home-page: https://github.com/mirkolenz/makejinja
License: MIT
Author: Mirko Lenz
Author-email: mirko@mirkolenz.com
Requires-Python: >=3.9,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: jinja2 (>=3.1.2,<4.0.0)
Requires-Dist: python-simpleconf[all] (>=0.5.7,<0.6.0)
Requires-Dist: rich (>=12.6.0,<13.0.0)
Requires-Dist: typer (>=0.7.0,<0.8.0)
Project-URL: Repository, https://github.com/mirkolenz/makejinja
Description-Content-Type: text/markdown

# MakeJinja

## Installation

MakeJinja is available via `pip` and can be installed via

`pip install makejinja`

Beware that depending on other packages installed on your system via pip, there may be incompatibilities.
Thus, we advise leveraging [`pipx`](https://github.com/pypa/pipx) instead:

`pipx install makejinja`

## Usage

Two arguments are required to work:

1. `INPUT_FOLDER` containing the template files. It is passed to Jinja's [`FileSystemLoader`](https://jinja.palletsprojects.com/en/3.1.x/api/#jinja2.FileSystemLoader) when creating the environment.
2. `OUTPUT_FOLDER` as a location where the rendered templates are stored. MakeJinja preserves the relative paths in the process, meaning that you can even use it on nested directories.

To get an overview of the remaining options, we advise you to run `makejinja --help`.
In its default configuration, MakeJinja searches the input folder recursively for files ending in `.jinja`.
Also, we copy all contents (except raw template files) of the input folder to the output folder and remove the `.jinja` ending during the render process.

