ema-0.1.0.0: ema.cabal
cabal-version: 2.4
name: ema
version: 0.1.0.0
license: AGPL-3.0-only
copyright: 2021 Sridhar Ratnakumar
maintainer: srid@srid.ca
author: Sridhar Ratnakumar
category: Web
synopsis: Static site generator library with hot reload
bug-reports: https://github.com/srid/ema/issues
homepage: https://ema.srid.ca/
description:
Ema is a next-gen Haskell library for building jamstack-style static sites.
Ema sites are change-aware; in addition to good ol’ static site generation,
it provides a live server supporting fast hot-reload in the browser on code
or data change.
extra-source-files:
CHANGELOG.md
LICENSE
README.md
flag with-examples
description: Include examples and their dependencies
default: True
flag with-helpers
description: Include helper modules based on blaze-html
default: True
library
-- Modules included in this executable, other than Main.
-- other-modules:
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
build-depends:
, aeson
, async
, base >=4.13.0.0 && <=4.17.0.0
, containers
, data-default
, directory
, filepath
, http-types
, lvar
, monad-logger
, monad-logger-extras
, neat-interpolation
, optparse-applicative
, relude
, safe-exceptions
, stm
, text
, unliftio
, wai
, wai-middleware-static
, wai-websockets
, warp
, websockets
if (flag(with-helpers) || flag(with-examples))
build-depends:
, blaze-html
, blaze-markup
, filepattern
, fsnotify
if flag(with-examples)
build-depends:
, commonmark
, commonmark-extensions
, commonmark-pandoc
, pandoc-types
, profunctors
, shower
, tagged
, time
mixins:
base hiding (Prelude),
relude (Relude as Prelude, Relude.Container.One),
relude
ghc-options:
-Wall -Wincomplete-record-updates -Wincomplete-uni-patterns
default-extensions:
FlexibleContexts
FlexibleInstances
KindSignatures
LambdaCase
MultiParamTypeClasses
MultiWayIf
OverloadedStrings
ScopedTypeVariables
TupleSections
ViewPatterns
exposed-modules:
Ema
Ema.CLI
if (flag(with-helpers) || flag(with-examples))
exposed-modules:
Ema.Helper.FileSystem
Ema.Helper.Tailwind
other-modules:
Ema.App
Ema.Class
Ema.Generate
Ema.Route
Ema.Route.Slug
Ema.Route.UrlStrategy
Ema.Server
if flag(with-examples)
exposed-modules:
Ema.Example.Ex01_HelloWorld
Ema.Example.Ex02_Clock
Ema.Example.Ex03_Documentation
hs-source-dirs: src
default-language: Haskell2010
executable ema-docs
hs-source-dirs: docs
default-language: Haskell2010
main-is: Main.hs
build-depends:
, base
, ema