/$$ |__/ /$$$$$$ /$$ /$$$$$$ /$$__ $$| $$ /$$__ $$ | $$ \ $$| $$| $$$$$$$$ | $$ | $$| $$| $$_____/ | $$$$$$$/| $$| $$$$$$$ | $$____/ |__/ \_______/ | $$ | $$ |__/
pie
is a build tool for Node.js-based projects. It's similar to Cake, but adds smart dependency tracking so only the files that need to get rebuilt will be (like good old Make).
If you're experiencing pain using Cake or Rake or even Make for large JS projects, pie
may just be your answer.
- Flexible DSL for defining exactly the tasks and build targets you need (loose superset of Cake syntax)
- Smart dependecy tracking for fast incremental builds
- Built-in auto-watch with smart recalculation of changes
- Customizable command-line switches
- Fast in-VM compilation of CoffeeScript, LESS, and Handlebars files (and very easy to add new ones)
- Very fast for running
git bisect
on large projects due to fast incremental builds - Growl notifications for build completion & errors
$ npm install pie-build -g
For a very simple one, see the Piefile
for this project: http://github.com/kenpratt/pie/blob/master/Piefile
$ pie
$ pie watch
If you get Error: watch EMFILE
, try increasing your open file discriptor limit. You can add this to your .bashrc
or .zshrc
to have it apply on boot.
$ ulimit -n 1024
$ pie clean build
$ pie clean
$ pie -T
$ git clone https://github.com/kenpratt/pie.git
$ cd pie
$ npm install
$ ./bin/bootstrap
$ pie
$ pie -T
Copyright (c) 2012 Ken Pratt. See LICENSE for details.