previous latest addition

Halipeto

News! - Halipeto is now released as version 2.0 which includes changes by Peter Simons to import HaXml using the correct named packages (ask him for more details!).

There's now a FAQ available and we now have a user - Scannedinavian has a familiar look ;o) Thank-you Shae (I've just been reading your site - you have clearly found the perfect fiance if she buys Haskell books).

Halipeto is a system for generating web pages from templates and a database. It includes support for a simple database based on text files and could easily be extended to access information via SQL.

In other words, it's a Haskell based Content Management System (a rather simple, but very flexible one).

Demonstration code and data is included to generate a part of the pancito web site.

Templates are XHTML with additional element attributes. Attributes are associated with Haskell functions. So, for example:

<p hal:text="hello {customer.name}"/>
is transformed to (asuming that the database contains the value "andrew" for customer.name):
<p>hello andrew</p>

More complex functionality, including iterating over data, is also available. The system can be extended further by adding user-defined Haskell functions.

To see what Halipeto is capable of, please visit the pancito site.

The code is copyright 2004 Andrew Cooke, 2007 Paul Simons and is available under the GPL. It includes some files from HaXML which are covered by a separate licence and copyright (details included in the source).

Files available include:

The tar-ball includes haddock documentation describing all the exported functions and data structures.

To compile and use the package you need to download and install ghc. This installs and works with little fuss on Windows and Unix machines, except for Windows ME and 95 (ghc 6.2). Other Haskell implementations may not work as the code uses a ghc extension.