Maximal Wiki/CMS

What is μWiki

μWiki is a web composition tool that completely embraces the web. Store your data with HTML documents. Access your documents locally, or online using your web browser. Query, combine, and transform your documents into situational applications with the HTML markup based API.

What is a wiki?!


A Web site developed collaboratively by a community of users, allowing any user to add and edit content.

Perhaps the most concise way to look at wiki is as a spectrum of what is modifiable. 

At one extreme, a wiki allows its users to modify almost everything about a website - content, layout, permissions (application wikis like Foswiki allow modification of skins, images, permissions, groups, and even the definition of data-schemas and the development of wiki-markup applications).

Document or Content Management Systems on the other hand, restrict some modifiability to a subset - authors and admins, and manage what users can do.

And at the other extreme, we have static websites and paper. 

Current progress

Dec 2013 - restart work on μWiki component model

earlier in the year, some Mozilla dev's published x-tags to go along with the ShadowDOM proposal. Now, there's also Polymer, which at first reading comes even closer to what I'm looking for. The component model should see me exploring this.
Longer break - working on Apache httpd and other non-js things
It seems I've been distracted by refactoring mod_autoindex, writing tests and writing 'a Apache mod_autoindex Pocket book'.

Break to work on TWiki->Sharepoint migration tool (til June 2013)

yup, I'm doing a windows .net project - I can migrate from TWiki/Foswiki to Sharepoint 2007,2010, 2013 and office 365.

Iteration 4 of μWiki (1 Mar 2013) - Mercury plus backbone.js

I went back to the Mercury editor version, and added a backbone.js collection view for the list of HTML pages in the current folder. The Backbone.sync I'm using requests XML using a WebDAV PROFIND, converts the response to a JSON object, and then passes that to a semantic DOM based template engine (leveraging the HTML5 template tag concept). I'll probably replace the hand cooked template engine with something like Transparency at some later stage.

Iteration 3 of μWiki (14 Feb 2013) - Create.js with hallo.js and redactor

This time I thought I'd try the VIE.js based Create.js with both redactor and hallo.js editors. Sadly, none of these works well enough for my use - both editors modified or lost nested semantic information - including RDF tags. 

Mercury rocks my boat so far - I'm looking into how to use the Snippets functionality to implement the MarkupAPI.

Iteration 2 of μWiki (1 Feb 2013) - Mercury

I've replaced the Aloha version with a partially working mercury editor version that was started using volojs and bootstrap. I'm having issues with reloading of javascript, I think related to the way mercury uses an iframe to sanitize the html being edited.
Server-side, there was no change needed.

Iteration 1 of μWiki (24 Jan 2013 - 26 Jan 2013) - Aloha

An Apache Subversion server, a tiny .htaccess file to enable server side includes on .html files, and minimal javascript boiler plate to enable Aloha wysiwyg html editing. New Page creation is achieved by redirecting the 404 ErrorDocument to the general chrome.html used for editing.

To make it more wiki-like, I still need to hook up a page list, and some support for easy linking within the wiki.