Content: Blog

Release

django CMS 5.1 is here: easier setup, flexible deployments, and a fresh editing experience

Fabian Braun

July 13, 2026

This release reduces friction across the whole project lifecycle: creating a new project, adding django CMS to an existing Django application, configuring larger deployments, controlling which plugins editors can use, and working with the CMS every day.

Today, we’re releasing django CMS 5.1.

Start a complete project with one command

The improved djangocms command can now create a complete, customized, ready-to-run project:

djangocms myproject

You can choose between traditional, headless, and hybrid modes and optionally include components such as versioning, moderation, aliases, and stories.

Run the command interactively or provide all the choices as command-line options:

djangocms myproject --mode headless --no-versioning --stories

The command installs the required packages, runs migrations, creates a superuser, and checks the resulting installation.

Check out the interactive mode by just running djangocms.

Add django CMS to an existing Django project

django CMS 5.1 also makes it much easier to introduce the CMS into an existing project.

From your project directory, run:

djangocms .

The command proposes the required changes to your Django configuration, templates, URL patterns, and dependencies.

Because these changes should always be reviewed, you can preview them first:

djangocms . --dry-run

This prints a unified diff without changing files or installing packages. The operation is also idempotent, so running it again will not duplicate configuration.

A modernized editing interface

The most visible change in django CMS 5.1 is its refreshed interface.

The new design brings:

  • Improved contrast and visual hierarchy
  • More consistent spacing and iconography
  • A more cohesive experience across frontend editing and Django administration

The familiar editing workflow remains, but the interface is cleaner and more consistent.

Projects that need additional time to adapt custom styling can continue using the previous theme by setting data-cms-theme="4" on the document’s <html> element.

More flexible multi-site deployments

Projects can now run multiple sites using one settings configuration.

When SITE_ID is omitted, django CMS can determine the current site from the request host. More complex projects can provide their own site-selection middleware by setting request.site.

You can also control which sites expose the Django administration interface while continuing to manage and preview content across sites.

More precise plugin configuration

django CMS 5.1 provides finer control over where plugins are available.

Plugins can be restricted according to:

  • The content model being edited
  • The placeholder slot
  • Their permitted parent or child plugin types

Parent and child restrictions support glob patterns, and automatic child restrictions make larger plugin libraries easier to maintain.

These controls help developers present editors with a focused selection of plugins instead of every registered plugin in every context.

Security, reliability, and performance

The release also includes authorization hardening, improved Content Security Policy compatibility, automatic repair of inconsistent plugin positions, safer page-tree operations, and fixes for deadlocks and unnecessary database queries.

Compatibility

django CMS 5.1 supports:

  • Django 5.2, 6.0, and 6.1
  • Python 3.10, 3.11, 3.12, 3.13, and 3.14

Django 4.2, 5.0, and 5.1 are no longer supported.

Upgrading an existing project

Before upgrading, back up your database and uploaded media. Review the complete release notes, particularly the backward-incompatible changes and removed functionality.

Install the new release and a supported Django version:

python -m pip install --upgrade "django-cms==5.1.0" "Django>=5.2"

Then run:

python manage.py migrate
python manage.py collectstatic --noinput
python manage.py cms check

Test custom plugins, apphooks, permissions, templates, and frontend editing in a staging environment before deploying to production.

Projects using custom django CMS migrations should also review the new squashed initial migration.

Try it and share your experience

Read the complete django CMS 5.1 release notes for detailed upgrade information, API changes, deprecations, and bug fixes.

Join us on Discord to tell us what you are building, share your upgrade experience, or ask the community for help.

Thank you to everyone who contributed code, documentation, testing, reviews, issue reports, and feedback. django CMS 5.1 would not be possible without you.


Do you want to test django CMS?

Try django CMS