Yay, you're interested in helping this thing suck less. Good for you!
Some things you should be familiar with before getting started
- Coffeescript
- Unit testing (with QUnit)
- Grunt (available via
npm install -g grunt-cli
) - Node/NPM (available via homebrew)
src/
- Coffeescript Source fileslib/
- Compiled individual JavaScript filesdist/
- Compiled, Concatinated, and Minifiedtest/
- Unit Testing Resources
Once you have NPM and Grunt installed, clone the repository and install all dependancies
git clone git@.....bubblechart.git bubblechart
cd bubblechart
npm install
Then to build a distribution run this grunt task
grunt dist
This will generate the compiled (and minified) sourc in your dist/
directory
along with a distributable zip archive.
Any time you change any of the src/**/*.coffee
files you'll
need to re-run this command.
You can also use
grunt watch
to automatically recompile and concat the unminified file everytime you
change any of the src/**/*.coffee
files.
The test/
directory mirrors the src/
directory for test organization, make
sure to organize and produce tests that fit the patterns present.
grunt test
Try your best to follow the present code formatting and patterns in place.
Pull Request requirements
- Include a clear explaination of the problem (or enhancement)
- Include a use case that clearly demonstrates said issue (or enhancement)
- Clean commit history (squash where it makes sense)
- Relevant Tests (either updated and/or new)
A few things it currently lacks that I'd like to see improved
- Better touch support
- Responsive interactivity
- Better handling of a large number of "bubbles"