Skip to main content

django-rust-templates

CI License: BSD-3-Clause

A drop-in replacement for Django's template engine, written in Rust.

It re-implements the Django template language natively: the lexer, parser, node tree, renderer, and the built-in tags and filters. It produces byte-identical output to stock Django and passes 100% of Django's own template test suite on Django 5.2 and 6.1. On the benchmark below it renders ~14× faster and compiles templates ~14× faster than stock Django.

TEMPLATES = [
    {
        "BACKEND": "django_rust_templates.RustTemplates",  # was django.template.backends.django.DjangoTemplates
        "DIRS": [BASE_DIR / "templates"],
        "APP_DIRS": True,
        "OPTIONS": {"context_processors": [...]},  # same options as DjangoTemplates
    },
]

Status: early (0.1). Correctness is gated on Django's own test suite, but the project hasn't had wide production use yet.

Contents

Installation

pip install django-rust-templates

Prebuilt wheels are published for CPython 3.12, 3.13 and 3.14 on Linux x86_64 and aarch64 (manylinux glibc ≥ 2.28 and musllinux). It requires Django ≥ 5.2.

Building from source

On other platforms pip falls back to the source distribution, or you can build from git. Either way you need a Rust toolchain (rustup; the pinned version in rust-toolchain.toml is installed automatically) and Python ≥ 3.12.

pip install git+https://github.com/MasonLyons/rust-django-template-engine.git

Or from a checkout:

git clone https://github.com/MasonLyons/rust-django-template-engine.git
cd rust-django-template-engine
pip install .

Usage

As a Django backend

Swap the BACKEND in TEMPLATES (see above). RustTemplates accepts the same DIRS, APP_DIRS and OPTIONS as DjangoTemplates: context_processors, debug, loaders, string_if_invalid, file_charset, libraries, builtins and autoescape. render(), render_to_string(), template loaders, {% load %} and your custom tag libraries work unchanged.

Standalone

Engine mirrors django.template.Engine (Django settings must be configured, as with the stock engine):

from django.template import Context
from django_rust_templates import Engine

engine = Engine(dirs=["templates"], libraries={"mytags": "myapp.templatetags.mytags"})
template = engine.from_string("Hello {{ user.name|title }}!")
template.render(Context({"user": {"name": "ada lovelace"}}))  # 'Hello Ada Lovelace!'

Compatibility

Supported
Django 5.2 LTS, 6.1
Python 3.12, 3.13, 3.14
Platforms Linux x86_64 and aarch64 (e.g. AWS Graviton), tested in CI; anything Rust and PyO3 target should build
  • Output parity. Rendered output, error types and error messages (including line numbers and the Django 6.1 Template: name, prefix) match stock Django exactly. Any difference is a bug, so please open an issue.
  • Built-in tags and filters run natively, including extends/block, include, for, if, with, cycle, url, csrf_token, Django 6.1 partialdef/partial, and filters such as date, floatformat, urlize and join.
  • Custom and third-party tag libraries keep working. simple_tag and inclusion_tag run on native helper nodes. Other tags (custom compile functions, simple_block_tag) are bridged to their Python implementation, so their own code runs at Python speed while the rest of the template stays native.
  • The Python node API (template.nodelist, get_nodes_by_type, render_annotated) is exposed through stock-compatible adapter nodes, so tooling that inspects compiled templates keeps working.

Performance

Microseconds per operation; lower is better. × is the speedup over stock Django.

scenario render stock render rust render × compile stock compile rust compile ×
simple_var 14.4 µs 3.2 µs 4.55× 26.3 µs 1.6 µs 16.87×
filter_chain 81.3 µs 6.6 µs 12.33× 168.5 µs 4.2 µs 40.53×
many_vars 176.4 µs 9.2 µs 19.07× 592.8 µs 34.2 µs 17.31×
loop 5274.4 µs 172.8 µs 30.52× 109.2 µs 5.9 µs 18.44×
if_branch 2072.0 µs 105.4 µs 19.67× 130.7 µs 7.9 µs 16.60×
attr_lookup 2143.6 µs 123.8 µs 17.31× 187.3 µs 8.1 µs 22.99×
autoescape 848.6 µs 44.6 µs 19.01× 77.0 µs 4.1 µs 18.70×
cycle_reset 813.4 µs 72.7 µs 11.19× 137.6 µs 6.3 µs 21.83×
firstof_widthratio 36.1 µs 3.8 µs 9.40× 108.2 µs 5.2 µs 20.73×
date_filter 3431.6 µs 144.2 µs 23.79× 102.1 µs 3.9 µs 26.26×
url_tag 56.4 µs 10.1 µs 5.56× 46.8 µs 2.7 µs 17.20×
include 3552.4 µs 360.5 µs 9.85× 76.6 µs 10.3 µs 7.42×
extends 1871.8 µs 47.9 µs 39.04× 133.9 µs 14.1 µs 9.49×
nested_table 3941.3 µs 128.0 µs 30.79× 130.1 µs 8.9 µs 14.62×
with_if_scopes 109.4 µs 13.2 µs 8.31× 822.6 µs 45.8 µs 17.94×
spaceless_table 27.4 µs 3.0 µs 9.10× 14.2 µs 1.7 µs 8.26×
bridged_simple_tag 323.6 µs 32.8 µs 9.88× 83.4 µs 16.5 µs 5.05×
cached_extends 249.2 µs 32.2 µs 7.75× 1.6 µs 0.4 µs 3.68×
value_types 5125.7 µs 504.0 µs 10.17× 60.0 µs 3.0 µs 20.21×
csrf_token_loop 388.4 µs 26.7 µs 14.54× 49.9 µs 3.3 µs 15.35×
inclusion_tag 1249.3 µs 304.4 µs 4.10× 84.5 µs 17.2 µs 4.91×
include_with 4315.5 µs 609.0 µs 7.09× 118.7 µs 14.8 µs 8.02×
index_none_lookup 13787.5 µs 202.4 µs 68.11× 118.3 µs 8.9 µs 13.23×
object_attrs 3170.7 µs 100.7 µs 31.48× 89.0 µs 6.8 µs 13.12×
object_methods 1634.9 µs 156.0 µs 10.48× 77.7 µs 4.9 µs 15.99×
object_properties 3141.4 µs 132.7 µs 23.68× 112.1 µs 8.0 µs 13.95×
realistic_page 22233.2 µs 1586.5 µs 14.01× 1.7 µs 0.5 µs 3.65×
floatformat 14537.9 µs 1002.8 µs 14.50× 247.7 µs 7.7 µs 32.36×
urlize 12457.2 µs 307.1 µs 40.56× 145.2 µs 4.8 µs 30.27×
join 3801.9 µs 283.5 µs 13.41× 158.8 µs 5.0 µs 31.63×
engine_e2e 996.3 µs 51.6 µs 19.32× 79.8 µs 9.9 µs 8.07×
geomean 14.49× 14.06×

Linux x86_64 (AMD EPYC 7601), Python 3.13.16, Django 6.1.2, release build.

Methodology. benchmarks/bench.py first renders every scenario on both engines and aborts unless the output is byte-identical, because a speedup on wrong output is worthless. It then times each engine in its own subprocess (so neither inherits the other's allocator or GC state), pinned to one CPU core, and reports the minimum of 7 timeit repeats. "Compile" is one template parse. In cached_extends and realistic_page (cached loader) it is a cache-hit get_template(), the per-request cost in production.

Reading the numbers.

  • realistic_page is the closest to a real view: {% extends %} with block.super, an {% include %} per row, model-like objects with attributes, methods and properties, and the date, floatformat, urlize and join filters, all through the cached loader.
  • The weakest rows are inclusion_tag (4.1×), simple_var (4.6×, dominated by fixed per-render overhead) and url_tag (5.6×, URL reversing is Django code).
  • This measures template time only. A view's database queries and middleware are unaffected, so whole-request gains depend on how much of each request is spent rendering.

HTML escaping and the lexer's tag scanner use portable SIMD: fearless_simd picks SSE2 on x86_64 and NEON on aarch64, and memchr picks the best instruction set at runtime.

Run the benchmarks yourself:

maturin develop --release
python benchmarks/bench.py                   # full table
python benchmarks/bench.py --only realistic  # filter scenarios
cargo bench --bench compile_bench            # Rust-only lexer micro-benchmarks

The CI workflow can also be run by hand (Actions → CI → Run workflow). It then runs the benchmark on both x86_64 and arm64 runners and uploads the tables as artifacts. Shared CI runners are noisy, so treat those numbers as indicative only.

Testing

Correctness is checked at three levels, all run in CI on both Django versions and both CPU architectures.

  1. Django's own template test suite. The real template_tests and template_loader suites from Django's repository run with the engine swapped in (about 5,900 renders per run). A small patch to Django's runtests.py replaces Engine, Template and the DjangoTemplates backend; see scripts/. Results: 100% on 5.2 and 6.1.
    python scripts/run_django_test_suite.py --branch stable/6.1.x
    python scripts/run_django_test_suite.py --branch stable/5.2.x
    
    The script shallow-clones the matching Django branch into .django-cache/ on first run. scripts/known_failures-*.txt lists accepted failures; at the moment it holds only one, which depends on the environment and fails only when run as root.
  2. Parity tests. pytest renders every case through stock Django and the Rust engine and asserts identical output or identical errors. Cases cover tags, filters, escaping edge cases at SIMD block boundaries and in UTF-8, lexer edge cases, loaders, inheritance, partials, custom tag libraries, the Python nodelist API and the backend. It also includes a Hypothesis differential fuzzer that generates random nested templates and contexts.
    pytest
    DTL_FUZZ_ITERS=20000 pytest tests/test_fuzz.py  # longer fuzz run
    
  3. Rust unit tests for the lexer, the variable/filter parser and the SIMD routines, checked against reference implementations:
    cargo test --release
    

With Docker

Every service rebuilds the extension from your working tree before it runs:

make test      # pytest on Django 5.2 and 6.1
make suite     # Django's own template suite on 5.2 and 6.1
make fuzz      # long fuzz run (DTL_FUZZ_ITERS=20000 make fuzz)
make bench     # release-build benchmarks

How it works

template source ──► lexer ──► parser ──► Rust node tree ──► renderer ──► str
   (src/lexer.rs)   (SIMD tag scan)  (src/parser.rs,      (src/render/)
                                      src/tags/, src/filters/)
  • Lexer (src/lexer.rs): an exact port of Django's tag_re splitting and verbatim handling, scanning for tags with memchr.
  • Parser (src/parser.rs, src/tags/, src/varparse.rs): builds a native node tree. Variables and filter expressions are parsed once, with lookup keys interned.
  • Renderer (src/render/): walks the tree against a Rust context stack that mirrors Context's layering. Python values are resolved through PyO3, using type-slot checks and exception-free misses on hot paths. Strings and integers take native fast paths, and dates, decimals and lazy objects go through native ports of Django's localisation and escaping.
  • Bridge (src/bridge.rs): tags without a native implementation are compiled by their Python compile function against a token stream that mirrors stock Django's, then rendered as Python nodes inside the native tree.
  • Python layer (python/django_rust_templates/): the RustTemplates backend, stock-compatible adapter nodes for template.nodelist, and traceback-depth shims so error reporting matches stock Django.

Development

python -m venv .venv && . .venv/bin/activate
pip install maturin pytest hypothesis "Django==6.1.*"
maturin develop            # debug build; use --release before benchmarking
pytest && cargo test
src/               Rust engine (lexer, parser, tags, filters, renderer, bridge)
python/            Python package: backend, adapter nodes, exceptions
tests/             pytest parity suite + Hypothesis fuzzer
scripts/           Django test-suite runner, runtests.py patches, known failures
benchmarks/        bench.py (engine vs stock Django)
benches/           criterion micro-benchmarks
docker/            development image used by docker-compose.yml / Makefile

See CONTRIBUTING.md for guidelines.

License

BSD-3-Clause, the same license as Django. See LICENSE. Large parts of this project are ports of Django's template engine; Django is © the Django Software Foundation and individual contributors.

Metadata

Release files for django-rust-templates 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-rust-templates 0.1.0
File Size Uploaded
django_rust_templates-0.1.0.tar.gz 193.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for django-rust-templates 0.1.0
File
django_rust_templates-0.1.0-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details
django_rust_templates-0.1.0-cp314-cp314-musllinux_1_2_aarch64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ ARM64 Details
django_rust_templates-0.1.0-cp314-cp314-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64 Details
django_rust_templates-0.1.0-cp314-cp314-manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64 Details
django_rust_templates-0.1.0-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
django_rust_templates-0.1.0-cp313-cp313-musllinux_1_2_aarch64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ ARM64 Details
django_rust_templates-0.1.0-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
django_rust_templates-0.1.0-cp313-cp313-manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64 Details
django_rust_templates-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
django_rust_templates-0.1.0-cp312-cp312-musllinux_1_2_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ ARM64 Details
django_rust_templates-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
django_rust_templates-0.1.0-cp312-cp312-manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64 Details

Total release size: 19.6 MB

Release files / django_rust_templates-0.1.0.tar.gz

Download URL django_rust_templates-0.1.0.tar.gz
Size 193.8 kB
Tags Source
SHA-256 checksum
How to use checksums
b42baffc1be4ae0984157fc340c32709bca1e2b3ba5f127bc802c0b766ca1413
BLAKE2b-256 checksum
How to use checksums
67394e1d36194a2f4abc9fa5588a344e7f4bfd296bc10760f54a2e5520391953
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL django_rust_templates-0.1.0-cp314-cp314-musllinux_1_2_x86_64.whl
Size 1.8 MB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
87872a6f0ce20ed10c3628260a15d2f279375cb288e5cf1824e9e93569c77ea6
BLAKE2b-256 checksum
How to use checksums
307fe18e3a41a565c45d00a692e44da59e5e60124b4a756a3bc9a5d6190a20bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp314-cp314-musllinux_1_2_aarch64.whl

Download URL django_rust_templates-0.1.0-cp314-cp314-musllinux_1_2_aarch64.whl
Size 1.7 MB
Tags CPython 3.14 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
f5e926a125ddf7544d7aa9981f6e4f5324da33aa5ab050f4f3609abcace9e134
BLAKE2b-256 checksum
How to use checksums
849f07ea602889d8c90473ea202c3fdae9bbb0fc65e74d0bfca29c7e121e0b35
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL django_rust_templates-0.1.0-cp314-cp314-manylinux_2_28_x86_64.whl
Size 1.5 MB
Tags CPython 3.14 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
9ac43d74a649a040df0f063ce01c817d69a7c2c8f8d32c4543e7cb86f83abcb2
BLAKE2b-256 checksum
How to use checksums
9a76eb414d17347bd3e3489b86e9e44910acb811875abf40084e061bcd71744f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp314-cp314-manylinux_2_28_aarch64.whl

Download URL django_rust_templates-0.1.0-cp314-cp314-manylinux_2_28_aarch64.whl
Size 1.5 MB
Tags CPython 3.14 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
0d2cb98366a231082940958b93f0af6d94419dc52a471246993c5f1f16f613fb
BLAKE2b-256 checksum
How to use checksums
2e2edea2bfaf3d8d31ee90826a003c888c2d6c46c24696246ebdffbe88127f4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL django_rust_templates-0.1.0-cp313-cp313-musllinux_1_2_x86_64.whl
Size 1.8 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
1e46032769ef3144cb1f69b9244326f2c8c190a76ea6e8d891adfa417b0f1d61
BLAKE2b-256 checksum
How to use checksums
3cb69919134755ca755ac3056d8013b7372f46e3baa28c40ddf8129ca4839a7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp313-cp313-musllinux_1_2_aarch64.whl

Download URL django_rust_templates-0.1.0-cp313-cp313-musllinux_1_2_aarch64.whl
Size 1.7 MB
Tags CPython 3.13 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
21fbc46d5bce1476e2353c64200cf1a2d1ca19e724f6b9250750579f4ad99dcc
BLAKE2b-256 checksum
How to use checksums
b469bf1e8d9f17da3dda01be9988666497d4ec9a5eecd1b8ed2175d562b666dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL django_rust_templates-0.1.0-cp313-cp313-manylinux_2_28_x86_64.whl
Size 1.6 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d65c9e7d2f859c338ff1cad10a94a0dba65cda83856725f650c49dca30ed4ffe
BLAKE2b-256 checksum
How to use checksums
247065ab83dd706486a1d6f2f0e76efb6039d1dd85cd471a6a293af900007895
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp313-cp313-manylinux_2_28_aarch64.whl

Download URL django_rust_templates-0.1.0-cp313-cp313-manylinux_2_28_aarch64.whl
Size 1.5 MB
Tags CPython 3.13 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
fc4767a80fc0790b868ed55db7f5a69f0526f960b4541b3ac05490814eea0ac9
BLAKE2b-256 checksum
How to use checksums
7b7b19f7ef0473576f881689e0e8e7ed3d0bf3d2af5022b353f7992f4ce29ccc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL django_rust_templates-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl
Size 1.8 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
436dfdc4ef715fe3938b99b8a0cb84c0aa3ee438a45be836040de1a65c3c3800
BLAKE2b-256 checksum
How to use checksums
122914ffcbad83cc51adee8f4ee8cb202a01c05ef3d0dc4bdd66b12ddd9f5d6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp312-cp312-musllinux_1_2_aarch64.whl

Download URL django_rust_templates-0.1.0-cp312-cp312-musllinux_1_2_aarch64.whl
Size 1.7 MB
Tags CPython 3.12 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
1e091f9eaaf7e522e17d58882a227b612b1d3174e3951ae2d65766d93294ef67
BLAKE2b-256 checksum
How to use checksums
3ecd57f62dc2fbd2b5d48bdc6df7dd5bbbce5ea60e0c7ed863d991d6d016015f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL django_rust_templates-0.1.0-cp312-cp312-manylinux_2_28_x86_64.whl
Size 1.6 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c2f089064333d7937abda3d6e052404102b37667fae730c24827fffdf51b0bd4
BLAKE2b-256 checksum
How to use checksums
0b15256ab27c1eb69f4e1a1c47e5789d8ce6a9148dfdea05829f19e95c1cda79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release files / django_rust_templates-0.1.0-cp312-cp312-manylinux_2_28_aarch64.whl

Download URL django_rust_templates-0.1.0-cp312-cp312-manylinux_2_28_aarch64.whl
Size 1.5 MB
Tags CPython 3.12 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
4d4821cf21f31ba4fd43e5881b51182ed7a901e046a600f2628c678f9b99b00b
BLAKE2b-256 checksum
How to use checksums
853a3044f18a6abb4c1d881a85e0c837c126c9c240c8843a25d2342d590fea02
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.3

13 release files

0.4.2

13 release files

0.4.1

13 release files

0.4.0

13 release files

0.3.3

13 release files

0.3.1

13 release files

0.3.0

13 release files

0.2.0

13 release files

This release

0.1.0 This release

13 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page