andreyfedoseev / django-static-precompiler

Django Static Precompiler provides template tags and filters to compile CoffeeScript, LiveScript, SASS / SCSS, LESS, Stylus, Babel and Handlebars. It works with both inline code and external files.
Other
222 stars 60 forks source link
babel coffeescript django handlebars lesscss livescript python sass scss stylus

Django Static Precompiler

Django Static Precompiler provides template tags and filters to compile CoffeeScript, LiveScript, SASS / SCSS, LESS, Stylus, Babel and Handlebars. It works with both inline code and external files.

Build Status Documentation

Documentation

Documentation is available at https://django-static-precompiler.readthedocs.io.

Install

pip install django-static-precompiler

Use in templates

{% load compile_static %}
{% load static %}

<script src="https://github.com/andreyfedoseev/django-static-precompiler/raw/main/{% static "path/to/script.coffee"|compile %}"></script>
<link rel="stylesheet" href="https://github.com/andreyfedoseev/django-static-precompiler/blob/main/{% static "path/to/styles1.less"|compile %}" />
<link rel="stylesheet" href="https://github.com/andreyfedoseev/django-static-precompiler/blob/main/{% static "path/to/styles2.scss"|compile %}" />

Use in Python

>>> from static_precompiler.utils import compile_static
>>> compile_static("styles.scss")
"COMPILED/styles.css"

Python & Django compatibility

django-static-precompiler Python Django
2.2+ 3.6+ 2.0 - 4.1
2.1 3.6+ 2.0 - 4.0
2.0 3.4+ 1.9 - 3.2
1.7-1.8 2.7+ 1.7 - 2.2
1.6 2.7+ 1.7 - 1.11
1.5 2.7+ 1.6 - 1.10
1.1-1.4 2.7+ 1.6 - 1.9
1.0 2.7+ 1.6 - 1.7