snaplet-sass
===========
[Changelog](CHANGELOG.md)
snaplet-sass integrates [Snap](http://www.snapframework.com) with
[Sass](http://www.sass-lang.com).
Features
--------
* 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
-------------
Site.hs:
```haskell
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 }
```
Application.hs:
```haskell
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.
Thanks
-------
This borrows hugely from [snaplet-fay](https://github.com/faylang/snaplet-fay).