The snaplet-sass package

[Tags:bsd3, library]

Sass integration for Snap with request based compilation during development and precompilation in production. For more information, please see

[Skip to Readme]


Change log
Dependencies base (==4.*), bytestring (>=0.9 && <0.11), configurator (>=0.2 && <0.4), directory (>=1.1 && <1.3), filepath (>=1.3 && <1.5), mtl (>=2.1 && <2.3), process (>=1.1 && <=1.3), snap (>=0.11.1 && <0.15), snap-core (>= && <0.10), transformers (==0.3.* || >0.4.1 && <0.5) [details]
License BSD3
Author Luke Randall
Category Web, Snap
Home page
Bug tracker
Source repository head: git clone
Uploaded Thu Jun 18 14:40:47 UTC 2015 by lukerandall
Distributions NixOS:
Downloads 468 total (3 in the last 30 days)
0 []
Status Docs available [build log]
Last success reported on 2015-06-18 [all 1 reports]




Maintainer's Corner

For package maintainers and hackage trustees

Readme for snaplet-sass

Readme for snaplet-sass-



snaplet-sass integrates Snap with Sass.


  • Compile and serve sass files on request, no need to restart the snap server.
  • Production mode to pre-compile all sass files.
  • Outputs sourcemaps to make debugging generated CSS easier.
  • Writes CSS to disk to allow reading the generated source.

Example Usage


import Snap.Snaplet.Sass

routes = [..., ("/sass", with sass sassServe)]

app :: SnapletInit App App
app = makeSnaplet "app" "A snaplet example application." Nothing $ do
  s <- nestSnaplet "sass" sass initSass
  return $ App { _sass = s }


import Snap.Snaplet.Sass

data App = App { _sass :: Snaplet Sass }

makeLens ''App

Now run your application and try requesting a Sass file.

A snaplet config file will be generated at snaplets/sass/devel.cfg the first time your application initializes the snaplet. The defaults are the recommended ones for development.

Place your .sass or .scss files in snaplets/sass/src. Note that a default devel.cfg will not be created if you have already created the sass directory. If this happens to you, move snaplets/sass, start your application, and then move the files back into snaplets/sass.

Any requests to the specified directory (in this case /sass/) will compile the appropriate Sass file and serve it.


This borrows hugely from snaplet-fay.