node package manager


Gringotts Build Status

A collection of real mixins and utilities supporting common behaviors found in web apps built with Chaplin and Handlebars.

Some behaviors add properties onto the mixed in class to support default or common properties/behaviors placed on the class's parent prototypes.

Here's an example of how to use a mixin:

Mixin = require 'mixin'
class someModel extends Mixin Chaplin.Model
  mixinOptions: {key1: 'stuff', key2: 'moreStuff'}

For more information, see the docs.

Getting Started


If you've never installed or used npm, you can skip the associated cache commands.

npm cache clear
npm install

Testing the project

If you start npm run grunt, then the specs will run automatically when .coffee files are saved.

Alternatively, you can run npm run grunt test which will run the specs via PhantomJS and generate code coverage reports.

Visit localhost:8000 to debug the tests in a browser.

Local docs

You can view docs locally at localhost:8000/docs/

Pushing changes

After making a change, please remember to update the docs with npm run grunt docs.

Also, make sure to publish a new version tag with npm run grunt release so projects can retrieve the change. The release task takes the same options as the bump task (release:minor, release:major) and defaults to a patch release. To release a specific version the npm run grunt -- release --setversion=x.x.x command should be used.