feincms3 offers tools and building blocks which make building a CMS that is versatile, powerful and tailor-made at the same time for each project a reachable reality.
It builds on other powerful tools such as Django itself and its admin interface, django-content-editor to allow creating and editing structured content and django-tree-queries for querying hierarchical data such as page trees.
The tools can be used for a page CMS, but also work well for other types of content such as news magazines or API backends for mobile apps.
Despite its version number feincms3 is already used in production on many sites and backwards compatibility isn't broken lightly.
This documentation uses Python 3's keyword-only syntax in a few places.
While Python 3 is strongly recommended feincms3 still supports Python 2. Keyword-only usage is enforced by function wrappers for now.
Start here if you want to know what feincms3 is and build your first CMS based on feincms3.
.. toctree:: :maxdepth: 2 introduction installation build-your-cms
These guides discuss key concepts and show how to approach common tasks. They do not have to be read in order and in general only build on the knowledge imparted in :ref:`build-your-cms`.
.. toctree:: :maxdepth: 2 guides/plugins guides/templates-and-regions guides/redirects guides/navigation guides/rendering guides/multilingual-sites guides/meta-opengraph-tags guides/multisite
feincms3 allows content managers to freely place pre-defined applications in the page tree. Examples for apps include forms, or a news app with archives, detail pages etc.
The apps documentation is meant to be read in order.
.. toctree:: :maxdepth: 2 guides/apps-introduction guides/apps-form-builder guides/apps-and-instances
.. toctree:: :maxdepth: 1 :glob: ref/*
.. toctree:: :maxdepth: 1 project/changelog project/contributing
- feincms3-example: Example project demonstrating some of feincms3's capabilities.
- feincms3-sites: Multisite support for feincms3. Allows running a feincms3 site on several domains with separate page trees.
- feincms3-downloads: A downloads plugin which also supports thumbnailing e.g. PDFs using ImageMagick.
- feincms3-meta: Helpers and feincms3 mixins for making Open Graph tags and meta tags less annoying.
- django-cabinet: A media library for Django which works well with feincms3 and follows the same software design guidelines.
- django-content-editor: The admin interface for editing structured heterogenous content.
- django-imagefield: An image field with in-depth image file validation and thumbnailing support which does not depend on a cache to be and stay fast.
- django-sitemaps: Sitemaps generation using a real XML library and support for alternates.
- django-tree-queries: The library feincms3's pages use for querying tree-shaped data.
- html-sanitizer: Allowlist-based HTML sanitizer used for feincms3' rich text plugin.
- FeinCMS: First version.