MyNixOS website logo
Description

A static website and blog generator.

Build websites using the full power and flexibility of Haskell.

See Readme on Github.

Lykah Build Status Hackage

100% native Haskell, static (for now) website and blog generator library.

Build websites in a HTML monad with access to the site's and other context information (powered by BlazeT).

Among other things, this enables smart links. The software will automatically include files that were actually referenced in the HTML; making broken (internal) links impossible.

Comparison with other projects

In contrast to yst, there is no (yaml) configuration, instead the website is build in actual Haskell, as a value of type Website.

hakyll treats the content — be it HTML or any other format — as a blackbox, which leaves a lot of Haskell's potential untapped. Lykah could, however, profit from hakyll's comfortable routing and file copying.

Current state

It is an experimental state and only powers my own website johannesgerer.com. I would be delighted to hear back from other users.

Currently, it tries to find a good balance between generality and conciseness. Other things, like processing of external (static) files, were of no priority to me, but can be easily accomplished since the website can to anything you can to with Haskell ...

At this stage, code says more than a thousand READMEs, so simply check it out.

Usage and Example

stack build  #only once to install dependencies

stack runghc -- -isrc src/Main

This will build the website johannesgerer.com in the output folder.

Documentation

See source and docs on Hackage.

Metadata

Version

0.0.2

License

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows