Rib is a Haskell static site generator based on Shake, with a delightful development experience.

UPDATE (Apr, 2021): Rib is superceded by Ema


Rib composes existing tools designed to do their task well, instead of reinventing their capabilities. Time spent using rib is time spent learning them.

  • Use Shake as the core build engine.
  • Write HTML & CSS in Haskell with natural flow (using Lucid & Clay)
    • Optional route system for type-safe construction of your site routes.
  • Parse Markdown and other formats supported by Pandoc / MMark.
  • Remain as simple as possible to use
  • Reproducible and a delightful workflow enabled by Nix, ghcid and fsnotify.

See Quick Preview# to get a feel for what your code may look like.

Getting Started

The easiest way to get started with Rib is to use the template repository, rib-sample, from Github.