About Lambdoc

Lambdoc is a library providing support for semantically rich documents in web applications, built with Ocsigen/Eliom integration in mind. It includes parsers for four different markup languages: Lambtex, Lambwiki, Lambxml, and Markdown (via OMD). The library also includes the possibility of outputing any Lambdoc document as an Ocsigen (Tyxml) HTML5 value.

Additional capabilities include the runtime customisation of available document features (you may, for example, declare that a certain class of users is only allowed to produce documents containing nothing more than paragraphs of plain text), detailed error messages, and the definition of basic macros. It also ships with lambcmd, a CLI application that allows the conversion between any of the input formats into one of the supported output targets.

Lambdoc is developed by Dario Teixeira and is licensed under the terms of the GNU GPL 2.0.


Lambdoc has the following dependencies. All of these are available via OPAM:

Downloads and development

Lambdoc 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 Lambdoc 1.0-beta2, released on 2014-09-19.

Bulding and Installing

To build only the library run make lib. To perform a Findlib installation of the library, run make install or make reinstall. To remove the package run make uninstall. If you also wish to build the lambcmd command line utility, issue make lambcmd. Finally, if you wish to build everything (library + lambcmd) you may simply run make all or just make.


The manuals for Lambtex and Lambwiki are available online.