node package manager



A speedy tool for combining and compressing your JavaScript, CoffeeScript, CSS and LESS source files.

Banshee combines your source files into a single script or stylesheet to reduce HTTP overhead and make development easier. It has built-in support for Sprockets-style dependency syntax (#= require x) and a lightning-fast, built-in watch mechanism to detect changes to your source files and recompile on the fly.

Requires node v0.8+

Build Status


$ npm install -g banshee

Command Line Interface


$ banshee <input file>:<output file> [options]


$ banshee src/


Option Description
-c, --compress Compress the final output
-w, --watch Use the built-in watch mechanism to observe your source files and re-compile when something changes
-q, --quiet Quiet the command-line output
--no-color Disable color in the output
--full-paths Use full filepaths in the manifest output
--clear Clear the terminal window, on by default with --watch
-h, --help Output usage information
-v, --version Output the version number

Requiring Source Files

Banshee supports Sprockets-style requires, with one exception. Instead of using require_tree, you can simply use require and Banshee will automatically detect if the path is a source file or a directory. Please note, doing require on a top level directory will be recursive through its sub-directories.

Syntax: (JavaScript)

//= require lib/some_directory 
//= require other_file.js 

Syntax: (CoffeeScript)

#= require lib/some_directory 
#= require 

Syntax: (CSS)

/*= require lib/some_directory */
/*= require other_file.css */

Syntax: (LESS) Uses normal LESS import statements.

@import 'lib/dependency1';
@import 'dependency2';

Paths used in require statements are evaluated relative to the file which contains them.


We'd love your help. Fork us so we can make Banshee better.

$ git clone git://


You can download this project in either zip or tar formats.

or get the source code on GitHub : imulus/banshee