FilterCoffee caches the compiled CoffeeScripts in memory but will recompile scripts when they are modified. A CoffeeScript compilation error results in the request returning a 500 error containing the CoffeeScript error message in the body. Error messages are also output to the wsgi.error stream so that they will show up in your console or in your servers error log.
FilterCoffee depends on CoffeeScript and in turn node.js. CoffeeScript expects the coffee command to be available on the current PATH. See the installation instructions for CoffeeScript for more information: http://coffeescript.org/#installation
There are a number of different ways to install CoffeeFilter:
This is the preferred method. Run:
pip install filtercoffee
Copy filtercoffee.py into an appropriate place in your WSGI applications code.
python setup.py install
You can wrap your WSGI application in the FilterCoffee middleware like so (assuming that the variable app contains your WSGI application and the variable debug is only set when the application is in development mode:
if debug: import filtercoffee app = filtercoffee.FilterCoffee( app, static_dir='/path/to/static/files')
FilterCoffee will now intercept any request that ends in .js and check if a corresponding .coffee file exists. If a .coffee file exists it will be compiled and the comiled output will be returned in the response (the compiled output is also cached such that recompilation only occurs if the .coffee file changes). If no .coffee file exists, the original application is called to handle the request.
0.3 Feb 01, 2012
0.2 Jan 25, 2012
0.1 Jan 17, 2012