The project is developed in master
branch. New feature or fix should come with a pull request from a fork. You can make a
pull request from either your master
branch or from a feature branch.
Developing the next major version goes in a separate branch made from master
.
Your gulp needs to be at least v.3.9.0
Install all npm dependencies
npm install
The stylesheet of the style guide itself could be used as test data. Start watching UI code changes in lib/app and build the app using the style guides stylesheets:
gulp dev
Run all the tests and JSCS linting with
npm test
Node module tests are ran with Mocha, UI related tests with Karma & PhantomJS.
This project follows AirBNB-ish JavaScript coding convention (with a few changes). It is tuned to use JSCS as a code checker. The checking is injected into the testing process, so you can see in Travis respond to your pull-request if your files follow the convention.
To be able to check during development, please
- run
$ gulp jscs
- use JSCS editor plugins
- use pre-commit hook
- Check that all the needed pull requests are merged
- Make sure that your clone fetched all the tags which exist in the SC5 repo
- Rebase your
master
branch against SC5 - Create
release/x.y.z
branch frommaster
with the number of upcoming version and switch to it - Increment the package number in
package.json
- Run
gulp publish
- Check the
CHANGELOG_LATEST.md
file. You can remove not needed items or rename them. - Prepend the contents of the edited
CHANGELOG_LATEST.md
toCHANGELOG.md
. - Commit changes
- Make a pull request from your release branch into
master
of SC5 organization - Once your pull request is merged, rebase
master
on your computer against SC5: 1)git fetch upstream
2)git rebase upstream/master
- Run
npm publish
- Create a versioning tag in GitHub. Insert the
CHANGELOG_LATEST.md
content as a description of this versioning tag.