1
1
mirror of https://github.com/srid/ema.git synced 2024-11-29 09:25:14 +03:00
Haskell static site generator that is change-aware
Go to file
2021-04-27 11:32:53 -04:00
.github/workflows Move docs to separate repo 2021-04-26 17:42:00 -04:00
.vscode Add script to run via tmux 2021-04-21 20:43:03 -04:00
bin Smooth route click (#9) 2021-04-22 10:34:01 -04:00
src Add Ord instance to Slug 2021-04-27 11:32:53 -04:00
.ghcid Move docs to separate repo 2021-04-26 17:42:00 -04:00
.gitignore Publish docs to GitHub Pages (#15) 2021-04-24 12:04:16 -04:00
CHANGELOG.md Add Ord instance to Slug 2021-04-27 11:32:53 -04:00
default.nix Add default.nix for legacy nix 2021-04-20 18:00:55 -04:00
ema.cabal Move docs to separate repo 2021-04-26 17:42:00 -04:00
flake.lock Move Data.LVar to separate repo 2021-04-26 13:36:34 -04:00
flake.nix Move Data.LVar to separate repo 2021-04-26 13:36:34 -04:00
hie.yaml Publish docs to GitHub Pages (#15) 2021-04-24 12:04:16 -04:00
LICENSE initial commit of WIP code 2021-04-19 11:07:52 -04:00
README.md Fix logo url 2021-04-26 18:10:11 -04:00
shell.nix initial commit of WIP code 2021-04-19 11:07:52 -04:00

ema

Hackage

Ema is a next-gen Haskell library for building jamstack-style static sites, with fast hot reload. See ema.srid.ca for further information.

The simplest Ema app looks like this:

main :: IO ()
main = do
  let name :: Text = "Ema"
  runEmaPure $ \_ ->
    encodeUtf8 $ "<b>Hello</b>, from " <> name

Hacking

Run bin/run (or Ctrl+Shift+B in VSCode). This runs the clock example (which updates every second, only to demonstrate hot reload); modify ./.ghcid to run a different example.

Getting Started

Use this template: https://github.com/srid/ema-docs