Skip to content
Django template tags to compile CoffeeScript
Python CoffeeScript
Latest commit a2849dc Oct 31, 2013 @andreyfedoseev Update README.rst
Failed to load latest commit information.
coffeescript Use hashlib instead of django.utils.hashcompat which is deprecated in… Apr 14, 2013
.gitignore Add basic tests Jun 15, 2011
AUTHORS Switch to staticfiles.finders when looking up the files in DEBUG mode. Nov 18, 2012
CHANGES.rst Release 0.7.2 Apr 14, 2013
LICENSE - add README.rst file Jun 14, 2011
MANIFEST.in
README.rst Update README.rst Oct 31, 2013
setup.py Release 0.7.2 Apr 14, 2013

README.rst

THIS PACKAGE IS NOT MAINTAINED.

Please use django-static-precompiler

Django CoffeeScript

Django CoffeeScript provides template tags to compile CoffeeScript into JavaScript from templates. It works with both inline code and extenal files.

Installation

  1. Add "coffeescript" to INSTALLED_APPS setting.
  2. Make sure that you have coffee executable installed. See CoffeeScript official site for details.
  3. Optionally, you can specify the full path to coffee executable with COFFEESCRIPT_EXECUTABLE setting. By default it's set to coffee.
  4. In case you use Django’s staticfiles contrib app you have to add django-coffeescript’s file finder to the STATICFILES_FINDERS setting, for example :
STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
    # other finders..
    'coffeescript.finders.CoffeescriptFinder',
)

Example Usage

Inline

{% load coffeescript %}

<script type="text/javascript">
  {% inlinecoffeescript %}
    console.log "Hello, World!"
  {% endinlinecoffeescript %}
</script>

renders to

  <script type="text/javascript">
    (function() {
  console.log("Hello, World!");
}).call(this);

  </script>

External file

{% load coffeescript %}

<script type="text/javascript"
        src="{{ STATIC_URL}}{% coffeescript "path/to/script.coffee" %}">
</script>

renders to

<script type="text/javascript"
        src="/media/COFFEESCRIPT_CACHE/path/to/script-91ce1f66f583.js">
</script>

Note that by default compiled files are saved into COFFEESCRIPT_CACHE folder under your STATIC_ROOT (or MEDIA_ROOT if you have no STATIC_ROOT in your settings). You can change this folder name with COFFEESCRIPT_ROOT and COFFEESCRIPT_OUTPUT_DIR settings.

Settings

COFFEESCRIPT_EXECUTABLE
Path to CoffeeScript compiler executable. Default: "coffee".
COFFEESCRIPT_ROOT
Controls the absolute file path that compiled files will be written to. Default: STATIC_ROOT.
COFFEESCRIPT_OUTPUT_DIR
Controls the directory inside COFFEESCRIPT_ROOT that compiled files will be written to. Default: "COFFEESCRIPT_CACHE".
COFFEESCRIPT_USE_CACHE
Whether to use cache for inline scripts. Default: True.
COFFEESCRIPT_CACHE_TIMEOUT
Cache timeout for inline scripts (in seconds). Default: 30 days.
COFFEESCRIPT_MTIME_DELAY
Cache timeout for reading the modification time of external scripts (in seconds). Default: 10 seconds.
Something went wrong with that request. Please try again.