Skip to content

ronanboiteau/django_safe_template_engine

Repository files navigation

GitHub Actions build status

Django Safe Template Engine

Django template engine to render untrusted template code

Table of contents

Requirements

Django 3.0 to 5.0

Available tools

Template engine

from django.template import Template
from django_safe_template_engine.engine import SafeTemplateEngine

safe_engine = SafeTemplateEngine()
Template(source, engine=safe_engine)

Validator

from django_safe_template_engine.validators import validate_safe_engine_template_syntax

template_code = '{% include "hacked.html" %}'
validate_safe_engine_template_syntax(template_code)

Trusted built-ins

The following tags and filters are allowed by this template engine.

Trusted tags

Trusted filters

Contribute

How to contribute

You want to add awesome features to Django Safe Template Engine? Here's how!

  1. Fork this repository
  2. Commit and push to your forked repository
  3. Open a pull request to merge your work into this repository

Code formatting and tests

You can use tox to run the code formatting / type checking tools, and run the test suite:

tox run

Ignore code formatting revisions from git blame

For a more relevant git blame you can set up your git to use the file .git-blame-ignore-revs in blame.ignoreRevsFile:

git config blame.ignoreRevsFile .git-blame-ignore-revs