Hoist is an extremely simple web programming environment. A semantic wiki gone wild.

Programming is different: no code to write! Instead the user interface produces possible statements and let the developer pick those seen fit. (Makes editing with touch input like tablets easier.)

Originally written because: a) we needed a test case for the SQL-interface in BALL b) the Stadtteilarchiv was in need of a easy-to-use, fool-proof, low budget semantic archiving software and c) there was a piece of PHP software, which would almost suffice for (b). But this posed too steep a learning curve on their staff and was too costly to fit it to their needs.

Over the time it became clear how flexible and powerful the framework actually is. While it was meant to be an exclusive prototype it was successfully reused several times for quite different needs. – Now we need documentation…

There is a set of simple templates (see docs) including a wiki, bug tracker with RSS/ATOM feeds, rdf statement editor etc.

Noteworthy feature: Most wiki software keeps the content in the original syntax; specific to the particular software. This is considered to be a show stopper. Long term storage should be done in generic formats according to common standards. We choose XML. This avoids the situation as seen at wikipedia when adding another editor to please casual users. The resource editor is prepared to use several markup languages. Defaulting to markdown there are choices of plain text, plain XML and an experimental thing based on the wikipedia syntax. (Others are quite easy to plug in.)


This guide is targeted at developers who want to set up an end user application from scratch.

End users will usually start from a pre-populated database.


  1. An array of nine hosts are commissioned to support this application/database. Most plug computers behind customer-grad ADSL. Those might answer your requests… and that can take more time than talking to a well connected, powerful machine, if you see what I mean.

  2. This is the upcoming documentation on the setup of this thing itself using only itself. At the moment there are many rough edges in the user experience, including but not limited to many views being disabled but still referenced, resulting in links answered with a weird SQL related exception page sans styling and navigation. Remember your back button for those cases!