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.
Generic validation of structured data
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.
A few notes about some design choices (which will probably be expanded upon in specific blog posts).