Our beloved Django CMS
⭐️ Features
- 🧘♀️ Built on top of the django framework
- 🥨 Beaked page abstract model to let you manage everything you need as a page.
- 🏞️ Optimized media management with autoresize
- 👯 Enable relations inside django JSONFields
- ⚡️ AutoCreate api endpoints from models
- 🚧 Enable JsonSchema directly in models endpoints
Camomilla is a Django CMS that allows you to create and manage your website's content with ease. It provides a simple and intuitive interface for managing pages, media, and other content types. Camomilla is built on top of the Django framework, which means it inherits all the features and benefits of Django framework. We try to continuously improve Camomilla by adding new features and fixing bugs. You can check the CHANGELOG to see what has been added in the latest releases.
📦 Quick Start
Here you can find some quick setup instructions to get started with Camomilla. For more detailed information, please refer to the documentation.
Install django-camomilla-cms and django from pip
$ pip install django
$ pip install django-camomilla-cms>=6.0.0
Create a new django project
$ django-admin startproject <project_name>
$ cd <project_name>
Create a dedicated folder for camomilla migrations
$ mkdir -p camomilla_migrations
$ touch camomilla_migrations.__init__.py
Create migrations and prepare the database
$ python manage.py makemigrations camomilla
$ python manage.py migrate
Add camomilla and camomilla dependencies to your project's INSTALLED_APPS
# <project_name>/settings.py
INSTALLED_APPS = [
...
'camomilla', # always needed
'camomilla.theme', # needed to customize admin interface
'djsuperadmin', # needed if you whant to use djsuperadmin for contents
'modeltranslation', # needed if your website is multilanguage (can be added later)
'rest_framework', # always needed
'rest_framework.authtoken', # always needed
...
]
Run the server
$ python manage.py runserver
🤖 AI-readable docs (llms.txt / MCP)
The documentation site is built with VitePress and ships machine-readable bundles for AI tools, generated automatically on every docs build:
llms.txt— a curated index of the docs (camomillacms.github.io/camomilla-core/llms.txt)llms-full.txt— the entire documentation concatenated into one file (…/llms-full.txt)
Point any llms.txt-aware tool (Claude Code, Cursor, Windsurf, …) at those URLs. To expose the docs to an MCP client, run the community mcpdoc server against the hosted llms.txt — no extra hosting required:
uvx --from mcpdoc mcpdoc --urls "Camomilla:https://camomillacms.github.io/camomilla-core/llms.txt" --transport stdio
Working on camomilla with Claude Code? The repo also ships two skills under
.claude/skills/—camomilla-usage(building on top of camomilla) andcamomilla-internal-architecture(editing camomilla's source). They load automatically; no MCP needed.
🧑💻 How to Contribute
We welcome contributions to Camomilla! If you want to contribute, please read our contributing guide for more information on how to get started.
🚀 Local Development (uv)
We use uv for fast dependency management and isolated environments.
- Install uv (one time):
macOS / Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
Homebrew:brew install uv
- Create a new venv inside the project (one time):
uv venv source .venv/bin/activate
- Sync dependencies (runtime + dev):
make install - Run tests:
make test
- Format & lint:
make format lint
🤖 AI-assisted contributing (bring your own agent)
Camomilla ships a tool-agnostic agent setup so you can contribute with whatever AI coding assistant you prefer. The single source of truth is AGENTS.md at the repo root — the cross-editor standard that Cursor, OpenAI Codex, Aider, Gemini CLI, GitHub Copilot, Zed and others read automatically. It carries the dev commands, conventions, repository map, a "gotchas" section, and pointers to the deep references.
Per-tool entry points are thin adapters that defer to AGENTS.md (no duplicated, drift-prone instructions):
| Tool | Reads | Notes |
|---|---|---|
| Most agents (Cursor, Codex, Aider, Gemini CLI, Zed, …) | AGENTS.md |
Auto-detected; nothing to configure. |
| Claude Code | CLAUDE.md → imports AGENTS.md |
Also auto-loads two skills under .claude/skills/ (camomilla-usage, camomilla-internal-architecture). |
| GitHub Copilot | .github/copilot-instructions.md → points to AGENTS.md |
Recent Copilot reads AGENTS.md natively too. |
The two deep references under .claude/skills/ are plain Markdown — open them with any agent or editor, not just Claude: camomilla-usage/SKILL.md (building on top of camomilla) and camomilla-internal-architecture/SKILL.md (editing camomilla's source). The published docs also expose an llms.txt for AI ingestion.
Using a tool that needs an explicit instructions path? Point it at AGENTS.md.
Metadata
Release files for django-camomilla-cms 6.7.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| django_camomilla_cms-6.7.2.tar.gz | 162.2 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| django_camomilla_cms-6.7.2-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 367.9 kB
Release files / django_camomilla_cms-6.7.2.tar.gz
| Download URL | django_camomilla_cms-6.7.2.tar.gz |
|---|---|
| Size | 162.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b576b375ee78cf43b82768c98171a1feb59a8cc144ac03497ea15037b3bc442e
|
|
BLAKE2b-256 checksum How to use checksums |
ca34ba313f5c74a334348a5353b06f8b81eb65640ce3bde8027e4405e42c7ed0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 3, 2026.
Transparency logRelease files / django_camomilla_cms-6.7.2-py2.py3-none-any.whl
| Download URL | django_camomilla_cms-6.7.2-py2.py3-none-any.whl |
|---|---|
| Size | 205.7 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
ce6647e1d63627d30d141618fa7b0120580431f3a6deffdabc3d5bf0a9477915
|
|
BLAKE2b-256 checksum How to use checksums |
3fc5c136db10c7884ea2de4bff9bdd1518f30b93ec208a62a1b3795fbc9d9603
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 3, 2026.
Transparency logSecurity for django-camomilla-cms 6.7.2
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.
Attestation for django_camomilla_cms-6.7.2.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 Sep 3, 2026.
Transparency logA 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.
To learn more about protecting yourself from malicious actors, visit our package security documentation.