| CARVIEW |
heist-emanote: An Haskell template system supporting both HTML5 and XML.
Heist is a powerful template system that supports both HTML5 and XML. Some of Heist's features are:
Designer-friendly HTML5 (or XML) syntax
Templates can be reloaded to make changes visible without recompiling your Haskell code
Enforces near-perfect separation of business logic and view
Powerful abstraction primitives allowing you to eliminate repetition
Easy creation of domain-specific markup languages
Built-in support for including JSON and Markdown content in templates
Simple mechanism for designer-specified template caching
Optional merging of multiple <head> tags defined anywhere in the document
[Skip to Readme]
Modules
[Index] [Quick Jump]
Downloads
- heist-emanote-1.2.1.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
| Versions [RSS] | 1.2.0.0, 1.2.1.0 |
|---|---|
| Dependencies | aeson (>=0.6 && <2.1), attoparsec (>=0.10 && <0.14), base (>=4.5 && <4.15), blaze-builder (>=0.2 && <0.5), blaze-html (>=0.4 && <0.10), bytestring (>=0.9 && <0.11), containers (>=0.2 && <0.7), directory (>=1.1 && <1.4), directory-tree (>=0.10 && <0.13), dlist (>=0.5 && <0.9), filepath (>=1.3 && <1.5), hashable (>=1.1 && <1.4), indexed-traversable, lifted-base (>=0.2 && <0.3), map-syntax (>=0.3 && <0.4), monad-control (>=0.3 && <1.1), mtl (>=2.0 && <2.3), process (>=1.1 && <1.7), random (>=1.0.1.0 && <1.3), semigroups (>=0.16 && <0.19), text (>=0.10 && <1.3), time (>=1.1 && <1.11), transformers (>=0.3 && <0.6), transformers-base (>=0.4 && <0.5), unordered-containers (>=0.1.4 && <0.3), vector (>=0.9 && <0.13), xmlhtml (>=0.2.3.5 && <0.3) [details] |
| Tested with | ghc ==7.4.2, ghc ==7.6.3, ghc ==7.8.4, ghc ==7.10.3, ghc ==8.0.2, ghc ==8.2.2, ghc ==8.4.4, ghc ==8.6.3, ghc ==8.8.3, ghc ==8.10.1 |
| License | BSD-3-Clause |
| Author | Doug Beardsley, Gregory Collins |
| Maintainer | snap@snapframework.com |
| Uploaded | by sridca at 2022-05-21T21:55:19Z |
| Category | Web, Snap |
| Home page | https://snapframework.com/ |
| Source repo | head: git clone https://github.com/snapframework/heist.git |
| Distributions | |
| Reverse Dependencies | 2 direct, 0 indirect [details] |
| Downloads | 259 total (10 in the last 30 days) |
| Rating | (no votes yet) [estimated by Bayesian average] |
| Your Rating |
|
| Status | Docs available [build log] All reported builds failed as of 2022-05-21 [all 1 reports] |
Readme for heist-emanote-1.2.1.0
[back to package description]Heist
!!!
This is a fork of heist released to Hackage, with this PR applied on top of upstream master.
!!!
Heist, part of the Snap Framework, is a Haskell library for xml/html templating. It uses simple XML tags to bind values to your templates in a straightforward way. For example, if you were to put the following in a template:
<bind tag="message">some text</bind>
<p><message/></p>
the resulting xhtml would be
<p>some text</p>
Likewise, if you need to add text to an attribute,
<bind tag="special">special-id</bind>
<div id="${special}">very special</div>
gives you
<div id="special-id">very special</div>
Values can also be pulled from "Splices" (see the documentation for more information.)
Building heist
The heist library is built using Cabal and Hackage. Just run
cabal install
from the heist toplevel directory.
Building the Haddock Documentation
The haddock documentation can be built using the supplied haddock.sh shell
script:
./haddock.sh
The docs get put in dist/doc/html/.
Building the testsuite
To build the test suite, cd into the test/ directory and run
$ cabal configure
$ cabal build
From here you can invoke the testsuite by running:
$ ./runTestsAndCoverage.sh
The testsuite generates an hpc test coverage report in test/dist/hpc.