A lightweight package for handling menus and breadcrumbs in your django project
Note: this package is still in beta. It has been successfully used in a few projects of my own. However, API may be subject to backward incompatible changes until the first major version is released.
Django-navutils is a lightweight package for handling menu and breadcrumbs inside your django project.
- No database involved (unless you want it): menus and breadcrumbs are plain old python code
- Highly customizable
- Conditionnal menu items display: you want to show a menu link to authenticated users only ? Anonymous ? Staff members ? A custom criteria ? You’re covered !
- i18n-friendly: you can rely on usual django translation mechanisms
- Unlimited menus
- Semi-automatic current menu node detection
- Python >= 2.7 or >= 3.3
- Django >= 1.7
The menu system may be integrated in any project, but the breadcrumbs part requires that you use class-based views.
Package is available on pip and can be installed via pip install django-navutils.
You’ll also have to add navutils to your settings.INSTALLED_APPS
Also add the following to settings.CONTEXT_PROCESSORS:
CONTEXT_PROCESSORS = ( # ... 'navutils.context_processors.menus', )
Project is licensed under BSD license.