Skip to main content

Django Template Linter

Project description

djlint

Simple Django template linter and reformatter.

codecov test Codacy Badge Maintainability

Install

pip install djlint

Linter Usage

djlint src # file or path

# with custom extensions
djlint src -e html.dj

Reformatter Usage

Reforamtting is beta. Check the output before applying changes. Please PR any changes needed 👍🏽

djlint src --reformat --check

djlint src --reformat

Optional args

Arg Definition Default
-e, --extension File extension to lint. default=html
--check Checks file formatting
--reformat Reformats html

Linter Rules

Error Codes

Code Meaning
E001 Variables should be wrapped in a single whitespace. Ex: {{ this }}
E002 Double quotes should be used in tags. Ex {% extends "this.html" %}

Warning Codes

Code Meaning
W003 Endblock should have name. Ex: {% endblock body %}.
W004 Status urls should follow {% static path/to/file %} pattern.
W005 Html tag should have lang attribute.
W006 Img tag should have alt, height and width attributes.
W007 <!DOCTYPE ... > should be present before the html tag.
W008 Attributes should be double quoted.
W009 Tag names should be lowercase.
W010 Attribute names should be lowercase.
W011 Attirbute values should be quoted.
W012 There should be no spaces around attribute =.
W013 Line is longer than 99 chars.
W014 More than 2 blank lines.
W015 Follow h tags with a blank line.
W016 Missging title tag in html.

Adding Rules

A good rule consists of

  • Name
  • Code - Codes beginning with "E" signify error, and "W" warning.
  • Message - Message to display when error is found.
  • Patterns - regex expressions that will find the error.

Changelog

0.0.8

Added rules.

0.0.1

Initial release.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

djlint-0.0.9.tar.gz (27.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

djlint-0.0.9-py3-none-any.whl (22.2 kB view details)

Uploaded Python 3

File details

Details for the file djlint-0.0.9.tar.gz.

File metadata

  • Download URL: djlint-0.0.9.tar.gz
  • Upload date:
  • Size: 27.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6

File hashes

Hashes for djlint-0.0.9.tar.gz
Algorithm Hash digest
SHA256 4645029fda06dd1406d16ffc9530c566b2a166153e8aefc19d0ae9c39ae59e33
MD5 cbad1c7fe89498106324a88e06c88c71
BLAKE2b-256 9438cd7c1864fc7592cfea51dcc6c1d01bb2a7144ab6b35c0da2bba433c3c339

See more details on using hashes here.

File details

Details for the file djlint-0.0.9-py3-none-any.whl.

File metadata

  • Download URL: djlint-0.0.9-py3-none-any.whl
  • Upload date:
  • Size: 22.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6

File hashes

Hashes for djlint-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 4dd084a795a115588ecf7ea931543a766e36642b49ba641f3116f9c2b66d1fa6
MD5 02405ca53803d2cbcffba86e7ceb5be1
BLAKE2b-256 11beb9dc5f91ab04623eec065bbc0af8f8c4cf5f55b03f7e579d810401873dbf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page