text. Override in any page template.
Default: "My App"
#}
{% block head_title %}My App{% endblock %}
{#
Tailwind CSS via CDN — works out of the box for development.
For production, replace with a compiled stylesheet:
1. Install: npm install -D tailwindcss
2. Add dj_auth templates to your tailwind.config.js content paths:
content: ["./templates/**/*.html",
"/lib/python3.x/site-packages/dj_auth/templates/**/*.html"]
3. Compile: npx tailwindcss -o static/css/main.css --minify
4. Override the extra_head block below with a link tag pointing to your compiled CSS.
#}
{#
BLOCK: extra_head [OPTIONAL]
Additional content: extra CSS links, meta tags, etc.
To swap Tailwind CDN for a compiled build, override this block.
#}
{% block extra_head %}{% endblock %}
{#
BLOCK: nav [OPTIONAL]
The top navigation bar. Override to customise branding.
Sub-blocks allow targeted overrides without replacing the entire nav:
- nav_logo_href : href for the logo link (default: "/")
- nav_logo_content : logo HTML (icon + site name)
- nav_links : right-side nav items (already has auth links)
#}
{% block nav %}
{% endblock nav %}
{# Flash messages — not a customisation point; override the nav block if you need to reposition these #}
{% if messages %}
{% for message in messages %}
{{ message }}
{% endfor %}
{% endif %}
{#
BLOCK: content [REQUIRED — this is where allauth renders auth pages]
Main page content. All dj_auth templates (login, signup, MFA settings, etc.)
render their output here. Your own page templates must also use this block.
#}
{% block content %}{% endblock %}
{#
BLOCK: footer [OPTIONAL]
Page footer. Override to customise or remove.
#}
{% block footer %}
{% endblock footer %}
{#
BLOCK: extra_body [OPTIONAL]
Scripts/content just before . Used internally for the passkey JS snippet.
#}
{% block extra_body %}{% endblock %}