Kontent Day 30-32: Release

brentdax on 2005-08-04T07:01:17

I did indeed get page creation working. That meant, after a couple days devoted to release engineering, I could send this:

I am happy to announce the release of WWW::Kontent 0.01:

File: $CPAN/authors/id/B/BR/BRENTDAX/WWW-Kontent-0.01.tar.gz Size: 27402 bytes MD5 : 1295736bac6b0ef3339998ea47b9ad61

Please note that it may take some time for the distribution to reach your local CPAN mirror.

Kontent is a flexible web content management system written in Perl 6 and executable with Pugs. I am writing it with the help of The Perl Foundation and Google's Summer of Code program. This release is an incomplete preview, demonstrating my progress and giving a hint of what's to come. It is not feature-complete, and what's written isn't yet suitable for use in production, but it's certainly good enough to download, untar and play with on localhost.

In its initial configuration, Kontent looks quite similar to a wiki, with the ability to create and edit pages through a web interface and view a revision history. Examination of the code, however, will reveal a fairly sophisticated architecture capable of giving each page unique behavior and rendering the same content in multiple formats. A command-line tool is provided which can manipulate pages at a low enough level to change a page's class.

Although the distribution is on the CPAN, it cannot be automatically installed by CPAN.pm or CPANPLUS, largely because I haven't decided what should be installed where. I recommend you simply download the tarball and extract it in your home directory. The INSTALL file included in the distribution will explain how to get it running. Note that you will need both a copy of Pugs (the just-released 6.2.9 will do nicely) configured with Perl 5 interop, and a copy of Parrot to execute Perl 6 regular expressions. You will also need a SQL database engine and the Perl 5 DBI drivers to access it.

I am rather excited about this project, and I hope you will be too.

Share and enjoy, -- Brent 'Dax' Royal-Gordon Perl and Parrot hacker


Now that the release is out of the way, I'm starting in on the Kolophon markup language's parser. Until Perl 6 grammars are available, I'm probably going to follow the great tradition of web apps everywhere, and hack together a parser with regular expressions, loops, chewing gum and twine. (I started to type use perl5:Parse::RecDescent when I went "wait a minute, all my actions will have to be in Perl 5...and the interface of WWW::Kontent::Skeleton depends on Perl 6 calling semantics...Mommy!!!!)

Thus far, it's been fairly easy. On the other hand, thus far I've only written the easy part...