Legend:
Library
Module
Module type
Parameter
Class
Class type
YOCaml
Yocaml is a framework for building construction rules. Its implementation is biased towards facilitating the construction of static site (or document) generators. Conceptually, it is fairly close to version 3 of Hakyll, a generator written in Haskell.
This page serves as an index of documents describing and justifying certain design choices, as well as guides on how to use YOCaml to build projects.
The YOCaml API (full documentation) can be accessed via this link. The various plugins are accessible via the documentation root.
You can refer to the examples at the root of the source repository to see extensively documented examples of how to use YOCaml.
YOCaml allows the use of a collection of generic formats, so it must be able to validate arbitrary data. In this guide, we'll look at how to handle the validation of data (structured in the form of key values, rather like a JSON document) and how to project it into controllable OCaml types.
Design choices
A few notes about some design choices (which will probably be expanded upon in specific blog posts).