django-cms
Lean enterprise content management powered by Django.
What it is and what it does
django CMS is an enterprise content management system built on Django that lets you manage hierarchical page structures with inline editing, so content editors can work directly on rendered pages. It provides a flexible plugin system for composable content components, multi-site and internationalization support, and integration with rich-text editors. The core package is lean and open-source, backed by the non-profit django CMS Association, and integrates with the Django ecosystem through dependencies on django-classy-tags, django-formtools, django-treebeard, and django-sekizai.
You install it into a new or existing Django project and use the `djangocms` command-line tool to scaffold a fully configured project or add CMS features to your current setup. It supports modern Python versions (3.10–3.14) and recent Django releases (5.2, 6.0, 6.1), and offers extensibility through add-on packages for features like content versioning, editorial workflows, and headless setups. The project is actively maintained with a large community presence.
Use it for:
- Build a multi-language website with a hierarchical page structure and SEO-friendly URLs managed through a visual page tree.
- Enable non-technical editors to create and edit page content inline without leaving the rendered page view.
- Create reusable content components (plugins) that editors can compose into pages without custom development for each variation.
- Manage multiple independent websites from a single CMS instance with shared or site-specific content and settings.
- Integrate custom Django applications into the CMS navigation and content workflows via application hooks.
- Set up a headless CMS for serving content to multiple frontends (mobile apps, static site generators) via add-on packages.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
django CMS is a Django-based content management system that provides a hierarchical page tree, inline editing, a plugin system for reusable content, and multi-site and internationalization support for building publishing workflows.
Yes, if you are building a Django-based website or application that needs content management with editorial workflows, multi-site support, and inline editing. The low install friction, active maintenance, permissive license, and zero known vulnerabilities make it a solid choice. Consider it especially if your team is already familiar with Django and you need a flexible, extensible CMS rather than a standalone platform. Not a fit if you need a headless-first architecture out of the box (available via add-ons) or prefer a non-Django CMS.
Install
django-cms on PyPI
pip
pip install django-cmsuv
uv add django-cmspoetry
poetry add django-cmsInstalling django-cms
Before you install
Low install friction with a pure-Python wheel distribution. Active maintenance with a recent release (8 days ago) and 10662 repository stars. Depends on five Django-ecosystem packages (Django, django-classy-tags, django-formtools, django-treebeard, django-sekizai), all standard choices in Django projects.
License in practice
BSD-3-Clause is a permissive open-source license with minimal restrictions on use, modification, and distribution in both commercial and private projects. No license-related barriers to adoption.
Quickstart
pip install django-cms
djangocms mysite --interactive
cd mysite
python manage.py runserver
Requires Python 3.10 or later; Django 5.2, 6.0, or 6.1; and an existing or new Django project setup.
Verify before relying
- Whether the plugin system and extensibility model meet your custom content component requirements.
- Performance characteristics and scalability limits for large page trees or high-traffic sites.
- Compatibility of rich-text editor integrations with your preferred editor.
- Whether headless CMS capabilities via add-on packages suit your architecture.
Package facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — Django, django-classy-tags, django-formtools, django-treebeard, django-sekizai |
| Maintenance | actively maintained — 8 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 145,969/month — #11,112 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: django_cms-5.1.1-py3-none-any.whl
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
django-filerDjango Filer is a file and image management…
permissive · top 15,000 on PyPI
django-sekizaiDjango Sekizai provides template block…
permissive · top 15,000 on PyPI
djangocms-attributes-fieldProvides a Django model field and widget for…
permissive · top 15,000 on PyPI
djangocms-text-ckeditorIntegrates CKEditor (v4.17.2) as a text editing…
permissive · top 15,000 on PyPI
Products.CMFPlonePlone is a Python-based content management…
copyleft · top 15,000 on PyPI
wagtailWagtail is a Django-based content management…
permissive · top 5,000 on PyPI
djangocms-admin-styleProvides styled CSS templates and admin…
permissive · top 15,000 on PyPI
django-classy-tagsProvides a class-based system for writing…
permissive · top 15,000 on PyPI
contentful_managementPython client for Contentful's Management API,…
permissive · top 15,000 on PyPI
django-fiberDjango Fiber is a lightweight Django CMS that…
permissive · top 15,000 on PyPI