TNA Frontend Jinja templates
Project description
TNA Frontend Jinja
TNA Frontend Jinja templates are a Jinja implementation of the templates provided as part of TNA Frontend.
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.
Compatibility with TNA Frontend
TNA Frontend Jinja | Compatible TNA Frontend versions |
---|---|
0.1.34 |
v0.1.65 |
0.1.33 |
v0.1.62 , v0.1.63 , v0.1.64 |
0.1.32 |
v0.1.60 , v0.1.61 |
0.1.31 |
v0.1.59 |
0.1.30 |
v0.1.58 |
0.1.29 |
v0.1.57 |
0.1.28 |
v0.1.55 , v0.1.56 |
0.1.27 |
v0.1.54 |
0.1.26 |
v0.1.53 |
0.1.25 |
v0.1.51 , v0.1.52 |
0.1.23 , 0.1.24 |
v0.1.50 |
0.1.21 , 0.1.22 |
v0.1.49 |
0.1.20 |
v0.1.48 |
0.1.19 |
v0.1.45 , v0.1.46 , v0.1.47 |
0.1.18 |
v0.1.44 |
0.1.17 |
v0.1.43 |
0.1.15 , 0.1.16 |
v0.1.42 |
0.1.14 |
v0.1.40 , v0.1.41 |
0.1.13 |
v0.1.39 |
0.1.12 |
v0.1.37 , v0.1.38 |
0.1.11 |
v0.1.36 |
0.1.10 |
v0.1.34 , v0.1.35 |
0.1.9 |
v0.1.33 |
0.1.7 , 0.1.8 |
v0.1.31 , v0.1.32 |
0.1.6 |
v0.1.29-prerelease , v0.1.30 |
0.1.0 –0.1.5 |
[latest from main branch when published] |
Test the templates
python -m venv venv
python install -r test/requirements.txt
flask --app test run --debug --port 5000
node 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.34.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcc5b7006137fd64dc228428914b9a701bf1508a1c939559882543ee0f4f4c21 |
|
MD5 | cecd72988c99f3654569837ed1d160b6 |
|
BLAKE2b-256 | 59b8dd9949c1922d5682e694b567e7fec9e1040986cb12d39c93177dff32b79b |
Hashes for tna_frontend_jinja-0.1.34-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d70dfd7af45dea289a681f62bfb283b710880a6ca8e98abd93fdc1050bf8071e |
|
MD5 | fe11dd1c2ec58264e8522794a06c200f |
|
BLAKE2b-256 | 219c1d31782cd361f0eba822f250a986a0086b355510928332032505fefb94ab |