Kamaelia: Publish

What is it?

Kamaelia Publish as of right now aims to be a system that will let users publish themselves on their own terms. The goal is to allow a person to host their own web services without being beholden to anyone else for web space.

Who wrote it?

It's developed by Jason Baker. It builds on HTTP work by Michael Sparks & Ryan Lothian

Who's interested in it?

Michael Sparks, ... you?

Where do I get it & install it?



  1. Download

  2. Unzip the file.
  3. Run the executable.
  4. Go to to try it out.

Planned Schedule:

  • June 6 - Build local tool chain for packaging up the webserver as it stands at that instant using py2app, py2exe, distutils.
  • June 20 - Fix POST support with the server. Simplify URL routing and possibly include Paste, werkzeug, etc for more advanced URL routing. Make a WSGI application or use a pre-made one for serving static content and remove reliance on Minimal.
  • July 4 - Convert the server to be an XMPP client instead of using HTTP.
  • July 18 - Make an XMPP gateway to convert HTTP requests to XMPP that the WSGI server can understand.
  • Aug 1 - Work on package manager to easily install WSGI software. This is intended to be an easy to use graphical interface for installing and configuring WSGI software.
  • Aug 18 - I'll leave the last two weeks as a giant Miscellaneous. Tie up any loose ends with any of the apps I've written. Implement some of the would be nices that didn't make it into the final schedule. Examples include:
    • Create a FOAF database of some kind so that Google's SocialGraph API can be used to build friends lists.

    • Make the server more user friendly and create some good administration tools for idiots either using a native application or some kind of web app (the latter is preferable).
    • Make a basic plugin system based on mako templating. It's kind of hard to put this one into words, but the basic idea is to have a system that end users can design their own webpages with pre-made widgets that can be inserted as mako expression substitution.

Progress (dates related to the weekly meeting - these are the "DONE" lines)

  • Fixed some more stuff with the Minimal request handler, got MoinMoin working

See Also

How to use my toolchain for other projects

Project sub pages:
(by last change)


Just tested the "executable" under linux with python 2.5. Works perfectly fine. Really impressive - worked straight out the box.

Also just tested under Mac OS 10.. That comes with python2.3 which doesn't include wsgiref, which means I get the following failure:

Traceback (most recent call last):
File " stdin ", line 9, in ?
File "./kpublish/", line 5, in ?
File "./kpublish/Kamaelia/Experimental/Wsgi/", line 9, in ?
ImportError: No module named wsgiref.validate

Which isn't the least bit surprising - that machine doesn't have wsgiref installed. It may be worth considering re-packaging this to include a copy of wsgiref.

Still despite that, impressive :-)

  • FIXED:  wsgiref should be included in the bundle now.

-- Michael, 7 June 2008


Kamaelia is an open source project originated from and guided by BBC Research. For more information browse the site or get in contact.

This is an ongoing community based development site. As a result the contents of this page is the opinions of the contributors of the pages involved not the organisations involved. Specificially, this page may contain personal views which are not the views of the BBC. (the site is powered by a wiki engine)

(C) Copyright 2008 Kamaelia Contributors, including the British Broadcasting Corporation, All Rights Reserved

This web site is powered by the same code created for the bicker manor project. For more details, contact Michael Sparks at BBC Research directly (cf contact)