Skip to main content

Flask-Menu is a Flask extension that adds support for generating menus.

Project description


Flask-Menu is a Flask extension that adds support for generating menus.


Flask-Menu is on PyPI so all you need is:

pip install Flask-Menu


Documentation is readable at or can be build using Sphinx:

git submodule init
git submodule update
pip install Sphinx
python build_sphinx


Running the test suite is as simple as:

python test

or, to also show code coverage:



Version 0.7.0 (released 2017-12-12)

  • Uses whole segment of the URL instead of a prefix to determine active menu item. Currently the menu item is marked as active when there is a prefix match on the URL. This creates situations where multiple different menu items appear to be active just because they share a prefix. (#62)

Version 0.6.0 (released 2017-08-03)

  • Fixes Python 3 deprecation warnings.
  • Adds the external_url parameter to MenuEntryMixin’s register function, allowing menu items with external urls not tied to an endpoint.

Version 0.5.1 (released 2016-01-04)

  • Improves tests for checking when an item is active.

Version 0.5.0 (released 2015-10-30)

  • Drops support for Python 2.6.
  • Adds new property to MenuEntryMixin which allows the user to retrieve the current active item from the MenuEntryMixin’s tree. (#43)
  • Modifies project structure to be in line with other newer Invenio project packages. This includes renaming files to match with files in other projects, revising structures of certain files and adding more tools for testing. (#42)
  • Fixes incompatibility with pytest>=2.8.0 which removed the method consider_setuptools_entrypoints(). (#41)
  • Updates to the new standard greeting phrase

Version 0.4.0 (released 2015-07-23)

  • Flask-Classy support and automatic detection of parameters for url_for. (#33)
  • Improves how the default active state of items is determined. (#32)
  • Adds .dockerignore excluding among others Python cache files. This solves a problem when using both tox and docker to run the test suite on the same host. (#29)

Version 0.3.0 (released 2015-03-17)

  • New method has_active_child(recursive=True) in MenuEntryMixin. (#25)
  • Fixed documentation of blueprint example. (#21)
  • Configuration for Docker and demo app. (#22 #29)
  • Fixed template example and added code block types. (#14)

Version 0.2.0 (released 2014-11-04)

  • The Flask-Menu extension is now released under more permissive Revised BSD License. (#12)
  • New support for additional keyword arguments stored as MenuItem attributes. (#19)
  • Richer quick-start usage example. (#16)
  • Support for Python 3.4. (#6)
  • Documentation improvements. (#3)

Version 0.1.0 (released 2014-06-27)

  • Initial public release.

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
Flask_Menu-0.7.0-py3-none-any.whl (12.0 kB) Copy SHA256 hash SHA256 Wheel 3.6 Dec 12, 2017
Flask-Menu-0.7.0.tar.gz (24.2 kB) Copy SHA256 hash SHA256 Source None Dec 12, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page