Open source CMS software

I was impressed by Exponent when I first looked at it about a year ago. It had all the hallmarks of a quality project: modular design; clear, concise code; and a user-friendly interface. Progress, however, seems to have stalled since then. The chief developer left the project in January 2006, which explains the lack of development and though there have been mutterings of a "new start" from the community, there is little public evidence of this so far. But the Exponent website is promising imminent release of a new version, so hopefully progress will pick up soon.

Putting this shakiness to one side, however, Exponent is still well worth investigating. It is certainly very easy to install and employs a wizard-style interface similar to Joomla!'s. Once up and running, the front-end is used both as the public view and administrator interface. Site structure is hierarchical: pages can have sub-pages, which can themselves have sub-pages and so on. And within individual pages, chunks of functionality (from text and images to more complex items) are added as modules. There is no limit to the number of modules on a page, and they can be added, deleted or reordered via the browser.

A unique, and really useful, feature of the navigation system is the "pageset". This lets you create a subsite template which can be dropped anywhere into the navigation hierarchy. You can then use this to create multiple subsites which are virtually identical in structure and content, with the minimum of effort.

One of Exponent's strongest points, however, is the flexibility of its permissions system. Permissions are user- and role-based and can be set on a per-page or even per-module basis. There are separate permissions for managing pages, managing modules, and editing module content. Simple workflow builds on the permissions system, allowing you to require new or edited content to be approved before it goes live.

Turning to the content editor's view, Exponent shines here too. As well as providing WYSIWYG editing of content, there are also simple GUI tools for manipulating links between pages and inserting images. For example, if you want to create a link to another page on the site, you browse a site preview to the correct chunk of content, then click on it. Exponent automatically sets the clicked item as the destination for the link. The same tool is used to select images for insertion into pages of text.

On the down side, the default templates are plain and functional and only a couple of them are realistically usable for a real site. There is also very little documentation, making it hard to work with the more esoteric modules.

However, these negatives pale into insignificance when considered against the uncertainty of the project's future. If you can live with this, the functionality Exponent provides is impressive.


A great system for end-users, with very powerful site management functionality via the web interface; but it's hard to see where it will go next

Requirements: PHP, with MySQL or PostgreSQL