A smooth, flexible CMS to create the designs you like,
built on top of the powerful Django framework.
To create your Django project with all fluent components configured, use the following commands:
mkdir my-website.com cd my-website.com django-admin.py startproject mywebsite . -e py,rst,example,gitignore,ini \ --template=https://github.com/edoburu/django-project-template/archive/django-fluent.zip
This uses the project template (https://github.com/edoburu/django-project-template/), with everything preconfigured. All instructions to setup the project can be found in the generated README.rst
file.
Next, create the Python virtualenv where all dependencies can be installed into:
mkvirtualenv my-website.com pip install -r requirements/dev.txt
Change the database settings in local.py
. Copy the projectname/settings/local.py.example
to projectname/settings/local.py
and change the DATABASES
setting. Create the database in PostgreSQL:
sudo su - postgres createuser $PROJECT_DB_USER -P # testtest is the default password createdb --template=template0 \ --encoding='UTF-8' --lc-collate='en_US.UTF-8' --lc-ctype='en_US.UTF-8' \ --owner=$PROJECT_DB_USER $PROJECT_DB_NAME exit
You can now start the project as usual:
./manage.py migrate ./manage.py runserver
You can now start developping. For example, adding extra Django apps, or customizing the frontend code. The project is already setup with a working Bootstrap 3 style, but you’re free to change that to your own needs!
The default project has the following file locations:
apps/
- a namespace for all custom modules to add (that don’t interfere with the global namespace)frontend/
- everything the frontend team needs. Sass, templates and assets.projectname/
- the Django project with settings that binds everything together.If you wish, you can move all code files into a src/
folder, so the root folder leaves room for other folders, such as a docs
, logs
and web
(for the static/media files) folders or even an etc
and deployment
folder. The only settings change would be the ROOT_DIR
setting. You can the sources of this web site as example.
Some projects have complex designs that may warrant using custom page types or content blocks.
page_type_plugins.py
.content_plugins.py
.You can already create your first pages and start working on implementing the design.
Have fun!