TNA Frontend Jinja templates
Project description
TNA Frontend Jinja
Quickstart for Flask projects
Use the Flask application's jinja_loader
to allow templates included from either your app (in the below example called app
) and the tna_frontend_jinja
package.
Ensure you application is first on the list. This means you can overwrite the standard templates by creating a template with the same filename in your project.
from flask import Flask
from jinja2 import ChoiceLoader, PackageLoader
def create_app():
app = Flask(__name__)
app.jinja_loader = ChoiceLoader(
[
PackageLoader("app"),
PackageLoader("tna_frontend_jinja"),
]
)
Using the templates
{% from "components/button/macro.html" import tnaButton -%}
{{ tnaButton({
'text': 'Save and continue'
}) }}
The options available to each component macro can be found in the National Archives Design System Components documentation.
The included templates are a like-for-like port, the only difference between the Nunjucks examples and their Jinja equivalents is having to quote key names, e.g. 'text'
instead of text
.
We test each component against its published component fixtures to ensure complete compatibility.
Test the templates
python -m venv venv
python install -r test/requirements.txt
flask --app test run --debug --port 5000
node test/tasks/test-fixtures.mjs
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for tna_frontend_jinja-0.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 46dcf489bdde890d03c19764c5a2dd41d85d02f5921574ec9c3f02b962131c7b |
|
MD5 | af732da7b2576ac84b391e77661d4047 |
|
BLAKE2b-256 | 79070d1caa339b6797312ba66bcd234adfc8a3b05242c5b008236294deaee118 |