Skip to content

Latest commit

 

History

History
112 lines (81 loc) · 2.59 KB

CONTRIBUTING.md

File metadata and controls

112 lines (81 loc) · 2.59 KB

Contributing

Want to contribute? Great!

It uses Gulp + Webpack for fast developing. Make a change in your file and instantaneously see your updates!

If you have discovered a bug or have a feature suggestion, feel free to create an issue on Github

Tech

It uses a number of open source projects to work properly:

  • node.js - evented I/O for the backend
  • Gulp - the streaming build system
  • Webpack - a module bundler

Installation

You need Gulp installed globally:

$ npm install gulp -g

Development

Fork https://github.com/pgmanutd/clogy.git

Open your favorite Terminal and run these commands:

git clone https://github.com/{{YOUR_USERNAME}}/clogy.git
cd clogy
npm install
gulp
  • An in memory folder (equivalent to dist folder containing clogy.js library and index.html file) will be created.
  • Server will start on port 3000 along with webpack-hot-middleware watch. Open http://localhost:3000 from your browser and play with clogy.

When you are done with your changes:

npm run build
git branch -b "YOUR_BRANCH_NAME"
git add --all
git commit -a -m "commit message"
git push -u origin "YOUR_BRANCH_NAME"

and create a pull request from github

Please follow few guidelines before raising a PR
  • Write tests and make sure all are passing
  • Check for lint and flow errors
  • Follow the existing coding style
  • Write a good commit message

Important commands:

Show help:

$ gulp help

Run in Development mode (with webpack-hot-middleware watch):

$ gulp

Run in Development mode (without watch):

$ gulp --unwatch

Run in Production mode (without watch):

$ gulp --type=production

Run eslint on all js files:

$ gulp eslint

Run eslint on js file specified:

$ gulp eslint --file=src/test.js

Run flow check on all js files (having /* @flow */ comment at top of the file) :

$ gulp flow

Run unit tests, coverage using (mocha, chai, sinon and istanbul), use .only for single test:

$ gulp test

Any one or more, default is PhantomJS:

$ gulp test --browsers=PhantomJS,Chrome,Firefox,IE,IE9,IE10