mincer-simple-server
v1.0.2
Published
Compile mincer assets with HTTP requests
Downloads
16
Readme
mincer-simple-server
Compile your mincer assets as fast as idiomatically possible—just a curl localhost
away.
mincer-simple-server supports out of the box:
- Source Maps
- CoffeeScript
- Haml Coffee Templates
- Persistent assets caching on the filesystem, through
Mincer.FileStore
Installation
$ npm install mincer-simple-server
Usage
Server
$ npm install
$ node serve.js --root /Users/randall/Workspace/project/ --include lib/assets/javascripts vendor/assets/javascripts --build_dir build --enable-source-maps --files application.js.coffee
Parameters:
--root
(String):--include
and--build-dir
are calculated against this value. Required.--include
(yargs.array): Mincer load path directories. Required.--build-dir
(String): Assets/maps/mincer cache are all built here. Required.--enable-source-maps
(Boolean): Toggle source map generation on (at a performance hit). Optional, defaults tofalse
.--port
(String): Port the server listens on. Optional, defaults to3000
.--files
(yargs.array): Files in the Mincer load path to be processed. Required.
The first compile of an asset with a lot of require
calls will take a long time (~20s on a 2014 MacBook Pro) because a cache will be built to $build_dir/cache
.
Client
To mince assets:
$ curl -X PUT localhost:3000
To kill the server:
$ curl localhost:3000/exit
Contributing :heart_eyes:
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
Guidelines
- Keep things simple
- The mincer API has support for a lot of features, including manifest files (to track asset hash changes) and built-in
connect
middleware... - ...but in lieu of using the aforementioned methods (
Manifest.compile
andServer.compile
) to build assets, we callEnvironment.findAsset
. It's a lower level method that spits out anAsset
object in only one line, and it helps keep us out of callback hell.
- Run
jshint
before you submit anything upstream