AJAX Content Management
Updating and extending websites is a chore and a far greater chore than it should be.
In April '04 I decided to write a content managment system that made this process easier. A system that allowed users both edit and extend their website through the browser and in-situ.
SHAW
The client for this work was a company called SHAW. It's current website is the one that was developed for the project and is currently maintained using the CMS.
What it looks like
After logging in, a user is presented with the original website but also sees a new editing toolbar embedded across the top of the page.
The user can now edit the page as if it were a Word document and use the controls from the toolbar to format it.
Controlled editing
The intuitiveness of the editing environment is driven by the fact that only certain sections of the page are editable.
By making some sections of the page entirely editable and protecting others, we give users the power to edit content without the freedom to damage structure.
Some parts of the page such at the title and meta tags don't lend themselves to natural editing. However, the ability to create custom Javascript interfaces to those sections means that editing is only a dialogue away.
Controlled styling
One of the most attractive properties of the technology behind the CMS is that it respects all CSS behind a page. Users format the appearance of the document but underneath the gloss they are actually adding platform-independent HTML markup
New-page creation
The addition of new pages is done by literally adding a new menu link. Custom, Javascript controls enable the user to add, delete, rename and rearrage links within the menu.
On saving the page, Javascript is used to package the menu details together and send them back to the server as a set of clearly defined parameters.
Page creation is therefore achieved without any refreshing and without the need for abstract and confusing tree models.
The advantages
Embedding the editing tools within the page itself, gives the user a hugely intuitive interface that is also incredibly fast. Being intuitive, the system also requires only minimal training.
No page refreshes mean no waiting. Users are free to do more productive things with their time such as writing content, optimising for Google and and embedding images.