Skip to content

camomillacms/camomilla-core

Repository files navigation

PyPI Django Versions Build Last Commit Contributors Open Issues Codecov License





Fallback image description

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.

Tip

Env Virtualization 👾

Use a virtualenv to isolate your project's dependencies from the system's python installation before starting. Check out virtualenvwrapper for more information.

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

🧑‍💻 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.