Skip to main content

entirius-django-munin

A Django module registry for Entirius, the open-source modular ecommerce platform: it discovers the installed modules and serves them over a REST API. It also stores runtime key-value configuration and reports configuration health, so frontends read what the backend runs instead of hardcoding module lists.

PyPI Python License: MPL-2.0

What it does

  • Discovers the installed Entirius modules (apps whose AppConfig sets is_volkanos = True) and records their capabilities: models, API, admin API, channels, translations, fixtures.
  • Re-scans after every migrate; discover_modules runs the scan by hand.
  • Keeps admin-controlled fields (enabled_in_cms, display_order, config) across scans and deactivates modules that left INSTALLED_APPS instead of deleting them.
  • Serves the registry publicly under api/munin/v2/, with extra fields for staff.
  • Stores runtime configuration entries (dotted keys, JSON values) with an admin API and a read helper for other modules.
  • Aggregates the Django system checks tagged entirius_config into a configuration health endpoint.

Installation

uv add entirius-django-munin
pip install entirius-django-munin
INSTALLED_APPS = [
    ...
    "django_utils",
    "django_munin",
]

# urls.py
urlpatterns = [
    path("", include("django_munin.urls")),
]
python manage.py migrate            # creates the tables and runs discovery
python manage.py discover_modules   # manual re-scan

Optional setting: MUNIN_CACHE_TTL; reference with the default in https://github.com/entirius/entirius-django-munin/blob/develop/AGENTS.md (section Settings).

Quick start

from django_munin.services.config_service import get_config_value

page_size = get_config_value("catalog.page_size", default=24)

Requirements

  • Python 3.11 or newer, Django 5.0 or newer.
  • Django REST Framework, djangorestframework-simplejwt, pydantic, drf-spectacular.
  • Entirius packages pulled in: entirius-django-utils.

Documentation

Part of Entirius

This module runs inside the Entirius backend service (Volkanos); the admin CMS reads its registry to decide which panels to show.

Development

make install     # sync dependencies (uv)
make check       # lint + format check (ruff)
make test        # test suite (pytest + pytest-django)

Development and agent instructions: https://github.com/entirius/entirius-django-munin/blob/develop/AGENTS.md

License

Mozilla Public License 2.0 (MPL-2.0) — see https://github.com/entirius/entirius-django-munin/blob/develop/LICENSE.

Metadata

Release files for entirius-django-munin 2.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for entirius-django-munin 2.3.0
File Size Uploaded
entirius_django_munin-2.3.0.tar.gz 80.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for entirius-django-munin 2.3.0
File Interpreter ABI Platform
entirius_django_munin-2.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 111.7 kB

Release files / entirius_django_munin-2.3.0.tar.gz

Download URL entirius_django_munin-2.3.0.tar.gz
Size 80.2 kB
Tags Source
SHA-256 checksum
How to use checksums
c361716ff040c97b11885ed07da8776506252955c193198196348acfa97013d7
BLAKE2b-256 checksum
How to use checksums
0600e73c17fd10581acd8166adca4a0b0934542bb6d0f1225ea521bf3bfd207c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / entirius_django_munin-2.3.0-py3-none-any.whl

Download URL entirius_django_munin-2.3.0-py3-none-any.whl
Size 31.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
799e5f10b7681190f5ba4a7f7f23722b9d9df40c9c0e43b52660902492d76a49
BLAKE2b-256 checksum
How to use checksums
c9bde5ee6e43e7086c67ddf7962a510a36cdfe24b6e02953efc9ba6d425f0ffc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

2.3.0 This release

2 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page