Version 46 (modified by Antti Kaihola, 7 years ago) (diff)

added PyLucid and Miramar

Django CMS Apps Comparison

This page lists a few well-known reusable Content Management System applications for Django and tries to gather a comparison of essential features in those applications.

Features currently evaluated
Feature Description
demo If the application has a public demo site, a link and login/password are given.
editor Support for WYSIWYG editor(s) and/or markup formats
img Image uploading integrated to page editing
i18n Support for multi-lingual content (versions of pages in different languages)
depth Maximum depth of page hierarchy
i18n-URL URLs (page slugs) can be translated
prefix URL language prefix support (e.g. /de/page1/)
edit-in-place Support for editing page content in-line (as opposed to only in the Django admin)
rearr Visual rearranging of page hierarchy (as opposed to entering index numbers)
slug-dups Page slugs need not be unique unless pages are under the same parent and in the same language
scheduled Scheduled publishing and hiding of pages
extend-navigation The navigation can be extended by 3rd-party apps
plugins The content of the pages can be easily extended by 3rd-party apps
reversion Django-reversion integration or version control
hierarchy-permissions Users can be restricted to edit only some part of the tree
reorderable-blocks Page content consists of several blocks of (optionally) different types which can be visually reordered.
generic-admin Are the Django admin modifications usable only inside the CMS application itself, or can they be used for other models too?
roles Can users have roles? Admin, Editor, Publisher
publisher Can content be edited without being published to the live site immediately?
south Support for django-south or an other DB migration tool

Application django.contrib.flatpages django-simplepages django-page-cms django-cms django-cms-2.0 django-simplecms feincms PyLucid Miramar
Django authors James Punteney Batiste Bieler
Jannis Leidel
Antoni Aloy López
Benjamin Wohlwend
Brian Morgan Thomas Steinacher Patrick Lauber
django-page-cms authors (before forking) Eric Simorre Matthias Kestenholz, Daniel Renz, Martin J. Laubach and others Jens Diemer and others The Cuba Libre Project / jag demo no no yes yes no only view no ? ? editor no YUI jQuery-based
EditArea TinyMCE,
Markdown wymeditor / Semantic editor / anything you want no TinyMCE / anything you want ? ? img no no? no no? yes no yes ? ? i18n no no yes yes yes no yes ? ? depth ∞ 2 ∞ ∞ ∞ ∞? ∞ ? ? i18n
URL no no yes* yes yes no yes ? ? prefix no no yes yes yes no yes ? ? edit
in-place no yes? yes no no no yes ? ? rearr no no? yes yes yes no yes ? ? slug-dups yes (URL-based) yes (URL-based) yes yes yes ? yes ? ? scheduled no no yes yes yes no yes ? ? extend-navigation no no yes kind of yes no yes ? ? plugins no no kind of kind of yes no everything is ? ? reversion no no yes no yes no no ? ? hierarchy-permissions no ? yes no yes ? yes ? ? reorderable-blocks no ? no no yes ? yes ? ? generic-admin-tools no / unmodified admin no no no no no yes ? ? roles no no no no yes no no ? ? publisher no no no no yes no yes ? ? south no no no no yes no no ? ? Column headings and * symbols reveal verbose descriptions when the mouse pointer hovers over them.

This page was originally created by akaihola.

Most of my conclusions about supported features are based on reading the code, not on actually testing the apps. Please make corrections in case I missed something.


To do

Ideas for making this page better:

  • add column for supported Django versions/revisions/branches
  • django-blocks to be tested
Back to Top