herringbone: A library for compiling and serving static web assets.

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]

Warnings:

A library for compiling and serving static web assets. For more information, please see https://github.com/hdgarrood/herringbone.


[Skip to Readme]

Properties

Versions 0.0.1, 0.0.2, 0.0.3, 0.0.4, 0.0.5, 0.0.6, 0.0.7, 0.0.7, 0.1.0, 0.1.1
Change log None available
Dependencies base (>=4.6 && <4.7), bytestring, containers, directory, herringbone, http-types, mtl, old-locale, process, process-listlike, system-fileio, system-filepath, text, time, transformers, unix-compat, wai (>=2.0 && <3), wai-app-static, warp [details]
License MIT
Author Harry Garrood
Maintainer harry@garrood.me
Category Web
Source repo head: git clone https://github.com/hdgarrood/herringbone
Uploaded by hdgarrood at 2014-01-06T01:19:59Z

Modules

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for herringbone-0.0.7

[back to package description]

herringbone

herringbone is a Haskell library for compiling and serving web assets. It aims to make it dead simple to create a 'Network.Wai.Middleware' or 'Network.Wai.Application' which deals with all of your static assets, including preprocessing for languages like Fay, CoffeeScript, Sass, and LESS.

It takes most of its inspiration from the Ruby library, Sprockets, hence the name.

Status

Alpha.

How to use it

import Web.Herringbone

fay, sass :: PP

hb = Herringbone
hb = herringbone
    ( addSourceDir "assets"
    . setDestDir   "compiled_assets"
    . addPreprocessors [fay, sass]
    )

-- You can now access assets programmatically
asset <- findAsset hb (fromJust . makeLogicalPath $ ["application.js"])

-- Or serve them with a Wai application
app = toApplication hb

For more information, go and look at the documentation on Hackage!