The Ocsigen project features Eliom, a web programming
framework for the Ocaml language. Eliom provides a solid and extensive foundation for
building highly dynamic sites. Litiom aims to complement Eliom, offering higher-level
modules codifying a number of common patterns found in web sites. (The name of the project
comes from the fact that Lithium follows Helium in the periodic table of
Presently, the library contains the modules Litiom_type (for improving modularity
and abstraction in Eliom applications), and Litiom_choice (for making the construction
of select boxes easier and more convenient).
Litiom is developed by Dario Teixeira
and is licensed under the terms of the LGPL 2.1
(with the OCaml linking exception).
Downloads and development
Litiom is distributed in source-code form. You can get all releases from the
project's page at GitHub
or the OCaml Forge
The latest version is Litiom 3.0
released on 2014-05-27. Here is the changelog for the last couple of few releases:
Version 3.0 (2014-05-27)
- Split off 'choose' related code into Litiom_choice module.
As a consequence, functors and interfaces have been renamed.
- In CHOOSABLE signature, rename 'elems' to 'all' for compatibility with Enumerate syntax extension.
- Function 'choose' now accepts 'transform' optional function as parameter (defaults to String.Capitalize).
- List of elements now of type 't list' (may be empty) instead of 't * t list'.
Accordingly, parameter 'allowed' in function 'choose' is now also of type 't list'.
(The function will raise Invalid_argument if provided with an empty list, however).
- Check for value only once in function 'choose'.
- Select now takes 'required' optional parameter, in track with latest Eliom update.
Version 2.1 (2013-08-28)
- Added support for all HTML5 input types.
Bulding and Installing
Litiom uses OASIS. Building
and installing follows the costumary configure, make, and make
install sequence. To generate the ocamldoc API documentation, run make doc.
You can browse the Ocamldoc generated API documentation online.
Note that it is assumed that the reader is comfortable with the Lwt and Eliom libraries.