Static website generator based on HTML element tree rewriting
Soupault is a static website generator and HTML processor built on HTML element tree rewriting, allowing users to define custom content models and page processing rules through built-in actions, external executables, templates, or Lua plugins. The tool works with the HTML element tree to perform tasks traditionally requiring client-side JavaScript, such as injecting HTML into pages and generating tables of contents, while extracting metadata from HTML using CSS3 selectors rather than front matter. It is written in OCaml and built with the lambdasoup library, distributed as statically-linked binaries with no dependencies for easy deployment across Linux, Windows, and macOS platforms. The project is maintained by the Pataphysical Society and actively developed.