Labyrinth - A Website In A Box
A Brief History
In 2000 a website management tool, Mephisto, was written, and then implemented as intranets for a number of Local Education Authorities in the UK. Although well designed, developed and deployed, it focused very specifically at the Education market in the UK, and very tightly combined its feature set to the core application. However, it did highlight how it could be implemented for alternative markets and clients.
In late 2002, the design of Labyrinth began, taking many of the good ideas of Mephisto, enhancing where possible, and restructuring the interfaces to better implement websites for any type of use. Taking away the focus of the Education specific features, making them more generic and most importantly ... pluggable ... allowed the core application to be tailored to whatever the client wanted. Added many new features or "plugins" extended Labyrinth even further.
After 8 years of closed source development, desipte being used for many successful Open Source websites, it was time to release the code for others to use, improve and adapt. The code base developed prior to version 5.0 remain closed source. However, from version 5.0 the Labyrinth code is now available within a git code repository.
At its heart, Labyrinth is a Model-View-Controller (or MVC) application. This means that the Model is held in the database, the View allows you to translate the data into presentations (typically web pages, but also PDFs, images and other presentation formats) for the client application (e.g. a web browser or your web phone), with the Controller providing the business logic required to extract the data and passing to the presentation layer.
Labyrinth was written specifically to service the needs for a dynamic website. Static websites are typically ones that are infrequently updated, often for businesses who only require a web identity, and do not necessarily run their business online. However, many online businesses need to change rapidly, whether that is to provide news, product lines or interact with their customer base. Labyrinth can be adapted to embrace all these needs and more. Its core plugins already consist of News, Articles, Photo Galleries, Events and Links, but many more exist, such as the Wiki plugin and those for Online Diarys (a.k.a. Blogs), Guestbooks, Discographies and Reviews. In many cases adding a further feature is only a matter of writing the plugin, the templates and queries to add, edit or delete the data. Just because Labyrinth doesn't provide a plugin feature currently, doesn't mean it can't :)
For further information regarding Labyrinth, please see the dedicated project site we have developed (using Labyrinth), to keep you updated on new features, plugins and releases of the code base. If you wish to be involved in the further development of Labyrinth, please use the git repositories listed on the project site to fork and extend the code base.