- Patrick Stadler · @pstadler · [email protected]
- Michael Weibel · @weibelm · [email protected]
- Mailing list
- yes, non-gmail users can signup as well
- FAQ
You want to help us? Awesome!
A few hopefully helpful hints to contributing to Candy
- Fork Candy
- Install Vagrant
- Run
vagrant up
. - Create a branch based on the
master
branch (git checkout -B my-awesome-feature
) - Run
grunt watch
to automatically run jshint (syntax checker) and the build ofcandy.bundle.js
andcandy.min.js
while developing. - Make your changes, fix eventual jshint errors & push them back to your fork
- Create a pull request
Please note that you should have a working XMPP server to test your changes (the vagrant way does already have a working XMPP server).
- Fork Candy
- Clone your fork
- Checkout out
master
branch (git checkout master
) - Install Node.js
- Install Grunt (
npm install -g grunt-cli
) - Install Bower (
npm install -g bower
) - Install npm dependencies (
npm install
in candy root directory) - Install bower dependencies (
bower install
in candy root directory) - Create a branch based on the
master
branch (git checkout -B my-awesome-feature
) - Run
grunt watch
to automatically run jshint (syntax checker) and the build ofcandy.bundle.js
andcandy.min.js
while developing. - Make your changes, fix eventual jshint errors & push them back to your fork
- Create a pull request
In case you have any questions, don't hesitate to ask on the Mailing list.
- Tests are run using Intern.
grunt
andgrunt watch
will each run unit tests in Chrome on Linux (for fast feedback).grunt test
will run both unit and integration tests in a variety of environments. Tests are run using Selenium Standalone and Phantom.JS while developing, and on Sauce Labs in CI or usinggrunt test
.- If you don't want to use the Vagrant box to run Selenium/PhantomJS, set
CANDY_VAGRANT='false'
to run tests.