<p align="center">
Django • Jinja • Nunjucks • Twig • Handlebars • Mustache • GoLang • Angular
Once upon a time all the other programming languages had a formatter and linter. Css, javascript, python, the c suite, typescript, ruby, php, go, swift, and you know the others. The cool kids on the block.
HTML templates were left out there on their own, in the cold, unformatted and unlinted :( The dirty corner in your repository. Something had to change.
djLint is a community build project to and add consistency to html templates.
Grab it with pip
pip install djlint
Or with the npm experimental install - Note, this requires python and pip to be on your system path.
npm i djlint
Lint your project
djlint . --extension=html.j2 --lint
Check your format
djlint . --extension=html.j2 --check
Fix my format!
djlint . --extension=html.j2 --reformat
Add a badge to your projects readme.md
:
[![Code style: djlint](https://img.shields.io/badge/html%20style-djlint-blue.svg)](https://www.djlint.com)
Add a badge to your readme.rst
:
.. image:: https://img.shields.io/badge/html%20style-djlint-blue.svg
:target: https://www.djlint.com
Looks like this:
Yes!
Would you like to add a rule to the linter? Take a look at the linter docs and source code
Are you a regex pro? Benchmark and submit a pr with improved regex for the linter rules
⚠️ Help Needed! ⚠️ Good with python? djLint was an experimental project and is catching on with other devs. Help out with a rewrite of the formatter to improve speed and html style for edge cases. Contribute on the 2.0 branch