Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/djlint/djLint
✨ HTML Template Linter and Formatter. Django - Jinja - Nunjucks - Handlebars - GoLang
https://github.com/djlint/djLint
django django-templates golang golang-template handlebars-js handlebars-templates html html-linter html-templates jinja2 jinja2-templates linter mustache-js nunjucks nunjucks-templates python twig twig-templates
Last synced: 3 months ago
JSON representation
✨ HTML Template Linter and Formatter. Django - Jinja - Nunjucks - Handlebars - GoLang
- Host: GitHub
- URL: https://github.com/djlint/djLint
- Owner: djlint
- License: gpl-3.0
- Created: 2021-07-12T18:23:55.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-04-18T06:24:40.000Z (7 months ago)
- Last Synced: 2024-05-22T19:42:20.869Z (6 months ago)
- Topics: django, django-templates, golang, golang-template, handlebars-js, handlebars-templates, html, html-linter, html-templates, jinja2, jinja2-templates, linter, mustache-js, nunjucks, nunjucks-templates, python, twig, twig-templates
- Language: Python
- Homepage: https://djLint.com
- Size: 30.8 MB
- Stars: 607
- Watchers: 13
- Forks: 72
- Open Issues: 92
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
🏗️ Maintainers needed, please reach out on discord or email!
The missing formatter and linter for HTML templates.
How to use • Как пользоваться • UtilisationWhat lang are you using?
Django • Jinja • Nunjucks • Twig • Handlebars • Mustache • GoLang • Angular
## 🤔 For What?
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.**
## ✨ How?
Grab it with `pip`
```bash
pip install djlint
```*Or with the npm experimental install - Note, this requires python and pip to be on your system path.*
```bash
npm i djlint
```Lint your project
```bash
djlint . --extension=html.j2 --lint
```
Check your format```bash
djlint . --extension=html.j2 --check
```
Fix my format!
```bash
djlint . --extension=html.j2 --reformat
```## 💙 Like it?
Add a badge to your projects ```readme.md```:
```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```:
```rst
.. image:: https://img.shields.io/badge/html%20style-djlint-blue.svg
:target: https://www.djlint.com
```
Looks like this:[![djLint](https://img.shields.io/badge/html%20style-djLint-blue.svg)](https://github.com/djlint/djlint)
## 🛠️ Can I help?
Yes!
*Would you like to add a rule to the linter?* Take a look at the [linter docs](https://djlint.com/docs/linter/) and [source code](https://github.com/djlint/djLint/blob/master/src/djlint/rules.yaml)
*Are you a regex pro?* Benchmark and submit a pr with improved regex for the [linter rules](https://github.com/djlint/djLint/blob/master/src/djlint/rules.yaml)
**⚠️ 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](https://github.com/djlint/djLint/tree/block_indent)
## 🏃 Other Tools Of Note
* [DjHTML](https://github.com/rtts/djhtml) A pure-Python Django/Jinja template indenter without dependencies.
* [HTMLHint](https://htmlhint.com) Static code analysis tool you need for your HTML
* [curlylint](https://www.curlylint.org) Experimental HTML templates linting for Jinja, Nunjucks, Django templates, Twig, Liquid