Skip to main content

django CMS Frontend

pypi Documentation Status coverage PyPI - Python Version PyPI - Django Versions from Framework Classifiers PyPI - django CMS Versions from Framework Classifiers

django CMS Frontend is a versatile plugin suite for django CMS that facilitates the easy creation of reusable frontend components. It supports any CSS framework, allowing developers to seamlessly integrate their preferred styling libraries. For immediate use, it includes a comprehensive set of Bootstrap 5 components and templates.

preview.png

Why this exists

The plugin tree is the editor’s interface. Every component you define, every nesting rule you allow, and every name you choose becomes a decision an editor has to make – over and over. Plugin architecture is editor experience.

django CMS Frontend exists so that you can shape that experience deliberately: declare components that model editorial intent rather than framework internals, constrain what can go where, and keep the CSS framework an implementation detail instead of a structure your editors have to navigate.

Further reading: Plugin Architecture Is Editor Experience.

Key features

  • Effortless Development of Custom Components: Create reusable frontend components with ease, utilizing simple templates and declarative form classes. These components can function both as CMS plugins and within standard Django templates.

  • Framework-Agnostic Design: Maintain flexibility in your project’s design by decoupling plugins from specific versions of a CSS framework. This ensures that updating frameworks in the future doesn’t necessitate rebuilding your site’s plugin structure.

  • Built-in Bootstrap 5 Components: Access a ready-to-use collection of Bootstrap 5 components, streamlining the process of building responsive and modern interfaces.

  • Extensibility: Enhance your project by creating custom components with minimal code. The system is designed to be extended both within individual projects and through separate theme applications.

  • Consistent User Experience: Utilize plugins as UI components throughout your project, promoting a cohesive and uniform user interface.

Building admin CSS

Use the Node version in .nvmrc and install the build dependencies with npm install. Run npm run build to compile the Sass in private/sass into the packaged admin CSS, with browser prefixes and minification.

For development, npm run build -- --debug produces expanded CSS with source maps. npm run watch rebuilds that output when Sass files change. npm run lint runs the existing Sass style checks separately.

Description

Designed to be framework-agnostic, django CMS Frontend allows developers to select and change CSS frameworks by adjusting project settings, eliminating the need to reconstruct the CMS plugin tree when upgrading or switching frameworks. It leverages django-entangled to store design parameters in a common JSON field, preventing database bloat and facilitating seamless updates to frontend features.

By providing a suite of Bootstrap 5-based components for layout structuring, including grids, components, and forms, django CMS Frontend simplifies the process of building responsive and structured page designs. Developers can also create custom components with minimal code, ensuring a consistent and efficient development experience.

It is up to you which (if any at all) pre-built components you want to include in your project. Each set of components is a separate package you can include in your project’s INSTALLED_APPS.

Contributing

Because this is a an open-source project, we welcome everyone to get involved in the project and receive a reward for their contribution. Become part of a fantastic community and help us make django CMS the best CMS in the world.

We’ll be delighted to receive your feedback in the form of issues and pull requests. Before submitting your pull request, please review our contribution guidelines.

The project makes use of git pre-commit hooks to maintain code quality. Please follow the installation steps to get pre-commit setup in your development environment.

We’re grateful to all contributors who have helped create and maintain this package. Contributors are listed at the contributors section.

One of the easiest contributions you can make is helping to translate this addon on Transifex.

Requirements

See REQUIREMENTS in the setup.py file for additional dependencies:

  • django-cms, version 3.11 or later

  • django-filer, version 1.7 or later

  • djangocms-attributes-field, version 1.0 or later

  • djangocms-text

  • djangocms-link

  • django-entangled 0.6 or later

Make sure django Filer and django CMS Text / django CMS Text CKEditor are installed and configured appropriately.

As of djangocms-frontend 2.0, djangocms-link is needed to use the Link/Button plugin.

Installation

For a manual install:

  • run pip install djangocms-frontend

  • add the following entries to your INSTALLED_APPS (or only those you need):

    'easy_thumbnails',
    'djangocms_link',  # Needed for link support
    
    # Base package template components and custom components
    'djangocms_frontend',
    
    # Add built-in Bootstrap 5 components as needed
    'djangocms_frontend.contrib.accordion',  # optional
    'djangocms_frontend.contrib.alert',  # optional
    'djangocms_frontend.contrib.badge',  # optional
    'djangocms_frontend.contrib.card',  # optional
    'djangocms_frontend.contrib.carousel',  # optional
    'djangocms_frontend.contrib.collapse',  # optional
    'djangocms_frontend.contrib.content',  # optional
    'djangocms_frontend.contrib.grid',  # optional
    'djangocms_frontend.contrib.icon',  # optional
    'djangocms_frontend.contrib.image',  # optional
    'djangocms_frontend.contrib.jumbotron',  # optional
    'djangocms_frontend.contrib.link',  # optional
    'djangocms_frontend.contrib.listgroup',  # optional
    'djangocms_frontend.contrib.media',  # optional
    'djangocms_frontend.contrib.tabs',  # optional
    'djangocms_frontend.contrib.utilities',  # optional
  • run python manage.py migrate

djangocms-frontend has a weak dependencies on djangocms-icon you can install separately or by adding an option:

pip install djangocms-frontend[djangocms-icon]  # Installs djangocms-icon for icon support in links

Documentation

See readthedocs for the documentation.

License

See LICENSE.

Metadata

Release files for djangocms-frontend 2.5.3

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

Source distribution (sdist)

Source distribution for djangocms-frontend 2.5.3
File Size Uploaded Provenance
djangocms_frontend-2.5.3.tar.gz 6.3 MB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for djangocms-frontend 2.5.3
File Interpreter ABI Platform
djangocms_frontend-2.5.3-py3-none-any.whl Python 3 none any Details

Total release size: 11.0 MB

Release files / djangocms_frontend-2.5.3.tar.gz

Download URL djangocms_frontend-2.5.3.tar.gz
Size 6.3 MB
Tags Source
SHA-256 checksum
How to use checksums
45dea224f8ca78e9c50383191d8ce27a628c7772a6c14a9cdeb6328eb4f3d7af
BLAKE2b-256 checksum
How to use checksums
ee81b56ec280e16e76fde50d69b243dbc554968bc4de9d48abfb696938833df9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / djangocms_frontend-2.5.3-py3-none-any.whl

Download URL djangocms_frontend-2.5.3-py3-none-any.whl
Size 4.6 MB
Tags Python 3
SHA-256 checksum
How to use checksums
34eb6ad93c48387d60e8e3e4959dbe5652289baedf7742e3dafab994162bd204
BLAKE2b-256 checksum
How to use checksums
95010892e1b28a72762f4200a616e3a2a31d6a64aeedb99c8d8fbad6b31cde25
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Security for djangocms-frontend 2.5.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for djangocms_frontend-2.5.3.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

2.5.3 This release

2 release files Full provenance

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