The hastache-aeson package

[ Tags: bsd3, library, text ] [ Propose Tags ]

The Module lets you render Hastache templates from aeson values. See the GitHub page for examples.

[Skip to Readme]


Dependencies aeson (>=, base (>=4.6 && <5), bytestring (>=0.10), containers (>=0.5), hastache (>=0.5), scientific (>=0.2), text (>=0.11), unordered-containers (>=0.2), vector (>=0.10) [details]
License BSD3
Copyright Vladimir Kirillov
Author Vladimir Kirillov <>
Maintainer Vladimir Kirillov <>
Category Text
Home page
Bug tracker
Source repo head: git clone git://
Uploaded Fri Sep 11 10:34:43 UTC 2015 by VladimirKirillov
Distributions NixOS:
Downloads 717 total (8 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2015-09-11 [all 1 reports]
Hackage Matrix CI




Maintainer's Corner

For package maintainers and hackage trustees

Readme for hastache-aeson-

[back to package description]


Build Status

  • Lets you pass aeson Value as MuContext to hastache
  • Since yaml is API-compatible to aeson, you can also render yaml Values.


{-# LANGUAGE OverloadedStrings #-}

import qualified Data.ByteString.Char8 as BS
import qualified Data.ByteString.Lazy.Char8 as LBS

import Control.Monad
import Data.Maybe (fromJust)

import Data.Yaml
import Text.Hastache
import Text.Hastache.Aeson (jsonValueContext)

event = BS.readFile "event.yaml"
template = BS.readFile "index.mustache"

render template value = hastacheStr defaultConfig template (jsonValueContext value)

main = do
    value <- liftM (fromJust . decode) event :: IO Value
    template' <- template
    render template' value >>= LBS.putStrLn


  • Viktar Basharymau
  • Vladimir Kirillov