Labyrinth ========= A Website Management Framework - extensible websites in a box. Labyrinth began life in 2002, with a small set of plugins to enable various features of web site management. The core set of plugins are now available as the Labyrinth-Plugin-Core package, with this Core package providing the core functionality that drives the Labyrinth framework system. The intention for Labyrinth was always to make building simple websites easy. The idea of a "website in a box" that has subsequently been used by other website applications in other languages. Sadly Perl has fell way behind with this, and Labyrinth ultimately still aims to provide several solutions to the kinds of websites people want to implement quickly, such as blogs, wikis and basic content sites. The fact that Labyrinth can be extended further and build on the core structure for virtually any website you may want is its target audience. Labyrinth wasn't built for complex corporate websites, and there are many other applications and frameworks available if that is what you want. Labyrinth also tries to keep it simple, so that it is fairly quick to get going, without the need for several weeks of design. Please note the tests for this code is very basic. If you wish to help me out and can add to the test suite, please feel free. INSTALLATION See the INSTALL file for full instructions. DEPENDENCIES The core Labyrinth distribution requires the following Perl modules to be installed: Archive::Extract CGI CGI::Cookie Config::IniFiles Cwd Data::Dumper Data::FormValidator Data::FormValidator::Constraints::Upload Data::FormValidator::Constraints::Words Data::FormValidator::Filters::Demoroniser Data::Phrasebook Data::Phrasebook::Loader::Ini DateTime DBD::mysql DBI Digest::MD5 Encode::ZapCP1252 File::Basename File::Copy File::Path File::Slurp File::Spec::Functions HTML::TagCloud Image::Size IO::File JSON::XS Log::LogLite MIME::Lite MIME::Lite::TT::HTML MIME::Types Module::Pluggable Regexp::Assemble Regexp::Common Session::Token Template Text::Wrap Time::Local URI::Escape WWW::Mechanize In addition the following are used within the core application for RSS support. However, the RSS feed is ran from a independent script and necessary for the running of a website. XML::Atom XML::Atom::Feed XML::Atom::Entry XML::RSS Note RSS support and functionality is likely to be abstracted out to a plugin in the future. ADDITIONAL FILES Additional files are needed to enable Labyrinth and any installed plugins to work correctly. These files consist of SQL, HTML template and configuration files, together with some basic CSS and Javascript files. Please see the Labyrinth-Demo package for an example set of these files. However, these files are only the beginning, and to implement your website, you will need to update the appropriate files to use your own layout design. ADDITION INFORMATION Although Labyrinth has long been in development, documentation has not been a priority. As such much of the documentation you may need to understand how to use Labyrinth is the code itself. If you have the inclination, documentation patches would be very gratefully received. The Labyrinth website [1] will eventually feature a documentation site, wiki and other features which are intended to provide you with the information to use and extend Labyrinth as you wish. [1] http://labyrinth.missbarbell.co.uk AUTHOR Barbie, for Miss Barbell Productions, COPYRIGHT & LICENSE Copyright (C) 2002-2015 Barbie for Miss Barbell Productions All Rights Reserved. This distribution is free software; you can redistribute it and/or modify it under the Artistic Licence v2.