--- page: description: | Build jamstack-style static sites in Haskell, with a live server supporting fast hot-reload in the browser on code or data change. --- # Ema :::{.avatar .w-32 .h-32 .float-right} ![[favicon.svg]] ::: {.text-xl .mb-8} [Ema](https://github.com/srid/ema) is a next-gen [**Haskell**](https://www.srid.ca/haskell) library for building [jamstack-style](https://jamstack.org/) static sites. An Ema site is *change-aware*; in addition to good ol' static site generation, Ema provides a live server supporting **fast hot-reload** in the browser, on code *or* data change. {.text-gray-600} The ultimate goal of ema is to facilitate creating with ease your own [neuron](https://neuron.zettel.page/), or just about any app that creates a browser view of arbitrarily changing data (on disk, database, or whatever). Ema is designed to facilitate creation of apps whose data is normally *edited* via traditional mechanisms (eg: text editor) but *rendered* as a delightful web page - so as to provide an economical read-only view of your data on desktop & mobile. A classic static site just happens one of the kind of such apps. :::{.my-8} * [[start]] * [[topics]] * [[howto]] * [Ema News](https://srid.ca/ema) ::: :::{.flex .justify-center .items-center .mb-8} :::