StrappedTemplates: General purpose templates in haskell

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Easy templating in haskell.

 import Control.Monad.IO.Class
 import qualified Blaze.ByteString.Builder as B
 import qualified Data.Text.Lazy as T
 import Data.Time

 import Text.Strapped

 makeBucket :: Integer -> InputBucket IO
 makeBucket i = bucketFromList
       [ ("is", List $ map (LitVal . LitInteger) [1..i])
       , ("ioTime", Func (\_ -> (liftIO $ getCurrentTime) >>= (\c -> return $ LitText $ T.pack $ show c)))
       ]

 main :: IO ()
 main = do
   tmpls <- templateStoreFromDirectory "benchmarks/strapped_templates" ".strp"
   case tmpls of
     Left err -> print err
     Right store -> do
       rendered <- render (putStore store defaultConfig) (makeBucket 2) "base_simple.strp"
       either (print) (print . B.toByteString) rendered
 ${ ioTime }
 
 {$ for i in is $}
     ${ i }
 {$ endfor $}

Properties

Versions 0.1.0.0, 0.1.0.0, 0.1.1.0, 0.2.0.0, 0.2.0.1, 0.2.0.2
Change log None available
Dependencies base (==4.7.*), blaze-builder (==0.3.*), containers (==0.5.*), filemanip (==0.3.6.*), filepath (==1.3.*), mtl (>=2.1 && <2.3), parsec (==3.1.*), text (>=1.0 && <1.2), transformers (==0.4.*) [details]
License BSD-3-Clause
Author Kyle Hanson
Maintainer me@khanson.io
Category Text
Home page https://github.com/hansonkd/StrappedTemplates
Uploaded by hansonkd at 2014-08-03T06:03:37Z

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees