Fiber is a simple and
user-friendly CMS that they use in almost all their
django projects. He showed a screencast with fiber in action. It got across
the usability and friendliness of Fiber quite nicely.

Originally they used django flatpages with a whole bunch of add-ons for tree
viewing and menus, but it didn’t feel like one coherent whole. So they made
Fiber which will integrate quite nicely with your existing project.

It is not a lot of code. 1601 lines of python and 2091 of javascript. (“Should
we even be at this conference, there’s more javascript than python!”). The
output is clean html with handy css classes. A couple of template tags makes
it easy to write your templates.

TODO:

Front-end editing for your models.

More control over placement of content including more sorting/filtering.

More plugins for video, twitter and so.

They’ll make UI/UX improvements: a designer will look at it in the next
weeks.

The core to django-cms are pages. The content itself are placeholders where
plugins are plugged into. Integration of your existing django apps with
django-cms is important, this is done by means of “apphooks”. Django-cms is
build to be extended, so it is both a ready-made app and a framework.

CMS has full django multi-site support. And, very important for them as a
Swiss company, is multilinguality. Their worst-case site has 18 different
websites with each a different combinations of 26 languages!

There’s editorial workflow with permission management. Front-end
editing. Almost as cool as Fiber’s (and they’re working on it).

An important extension mechanism is the “app hook”: you integrate your app
with django-cms with a specially-named auto-detected python file
that can configure a submenu structure, a view, a sub-urls
configuration. Likewise, plugins are in a cms_plugins.py. You can plug
those into slots in the page. The plugin defines what it is and how to render
it. By hooking in a separate admin, you can get front-end editing for your own
models.

Django-cms is pretty big. 170+ contributors. 1000+ watchers, 300+ forks. Fully
translated into 17+ languages. Dozens of apps. They have a dedicated front-end
developer now so that should help in getting the UI better and the javascript
cleaner.

They hope to get multi-device support going for the 2.3 version of
django-cms. And they hope to get the existing toolbar more extensible so that
it is easier for other apps to re-use and extend.

Plone, which they used earlier, is an amazing and great
python CMS, but also big and harder to understand. Then they
discovered django. Clean, simpler, easier. But no CMS. So they had to add a CMS
of their own: Merengue.

He demoed it live on his laptop. It worked without hickups! Important to them
is front-end editing and moving blocks of content around on the page with
javascript. Very dynamic.

Also doable via the web interface: adding cache settings per block. Even
translations are done via the web interface. Handy feature: you can get
translatable items highlighted for you so that you know what’s left to
translate.

They’ve also done their best to pimp the regular django admin interface.

Build-in is for instance django-compressor for js/css combining and
compression. There are many more existing apps that they use.