Django Lineup
Multiple navigation system for django sites.
Django Lineup lets you manage a tree of items. Each first level node represents a menu you can include in your templates.
Documentation
The full documentation is at https://django-lineup.readthedocs.io.
Quickstart
Install Django Lineup:
pip install django-lineup
django-mptt is installed automatically as an internal dependency; it does not need to be added to your project’s INSTALLED_APPS.
Add it to your INSTALLED_APPS:
INSTALLED_APPS = (
...
'lineup',
...
)
Add to your main urls.py:
...
path("lineup/", include("lineup.urls", namespace="lineup")),
...
Make sure the requests context processor is included (it is by default):
TEMPLATES = [
{
'OPTIONS': {
'context_processors': [
"django.template.context_processors.request",
],
},
},
]
Render a menu::
{% load lineup_tags %}
{% lineup_menu 'my-root-item-slug '%}
Render the breadcrumbs::
{% load lineup_tags %}
{% lineup_breadcrumbs 'my-root-item-slug '%}
Import a menu from a json::
$ python manage.py import_menu_from_json
Json example::
{
"label": "Main Menu",
"slug": "main-menu",
"order": 0,
"children": [
{
"label": "Tools",
"slug": "tools",
"order": 0,
"children": [
{
"label": "DNS Tools",
"slug": "dns-tools",
"order": 0,
"login_required": true,
"children": [
{
"label": "DMARC DNS Tools",
"slug": "dmarc-dns-tools",
"link": "/dmarc-tools/",
"title": "DMARC Rulez",
"order": 0
}
]
},
{
"label": "Password Generator",
"slug": "password-generator",
"order": 1
}
]
},
{
"label": "Disabled Item",
"slug": "disabled-item",
"order": 1,
"enabled": false,
"children": [
{
"label": "Disabled child",
"slug": "disabled-child",
"order": 0
}
]
},
{
"label": "Perm Item",
"slug": "perm-item",
"order": 2,
"permissions": [
"add_permission",
"view_session"
]
}
]
}
Features
Multiple menus supported
Visibility logic: login required / permissions
Render menu tree templatetags
Breadcrumbs templetetag
Import a menu from json management command
Rebuild tree button in admin
Django Baton integration to highlight different menu in the admin
Running Tests
Does the code actually work?
source <YOURVIRTUALENV>/bin/activate (myenv) $ pip install -r requirements_test.txt (myenv) $ python runtests.py
Development commands
pip install -r requirements_dev.txt invoke -l
Example app
This example is provided as a convenience feature to allow potential users to try the app straight from the app repo without having to create a django project.
It can also be used to develop the app in place.
To run this example, follow these instructions:
Navigate to the root directory of your application (same as manage.py)
Install the requirements for the package:
pip install -r requirements_test.txt
Apply migrations
python manage.py migrate
Run the server
python manage.py runserver
Access from the browser at http://127.0.0.1:8000
Admin user account is admin:admin
Credits
Django Lineup is developed by Otto SRL.
Tools used in rendering this package:
Metadata
Release files for django-lineup 1.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| django_lineup-1.1.1.tar.gz | 21.4 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| django_lineup-1.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 39.7 kB
Release files / django_lineup-1.1.1.tar.gz
| Download URL | django_lineup-1.1.1.tar.gz |
|---|---|
| Size | 21.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ada5760bd15a24d3bd377302393e5b4619d924c7a91f17c1aafa30cf427a3947
|
|
BLAKE2b-256 checksum How to use checksums |
36c494d1bf15bafa0c68f004501865e6127e0559f48e6c70d57d3fea6f0e0c50
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.
Transparency logRelease files / django_lineup-1.1.1-py3-none-any.whl
| Download URL | django_lineup-1.1.1-py3-none-any.whl |
|---|---|
| Size | 18.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d50369c43d294c4e016af29e02cd869b227b52d61cabd9debcd3bd46efef61a6
|
|
BLAKE2b-256 checksum How to use checksums |
3ac75caa92d0ed897597fff79171633cb57642b3e9eb49921a9295bf6990c88f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.
Transparency logSecurity for django-lineup 1.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for django_lineup-1.1.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 29, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.