# Releasing ally.js
The following sequence steps are necessary to fully release ally.js
# Publishing the library to npm
npm version <version>to update the package version- update
CHANGELOG.mdaccordingly npm run versionto replacev#masterin docs and bump jsbin examples accordinglygit commit package.json CHANGELOG.md docs -m 'chore(build): bumping to version <version>'to save the changesnpm run cleanto emptydist,webandreportsnpm run lintto build the librarynpm run buildto build the librarynpm run testto verify the library's integrity- The library can now be published to beta or stable:
npm run publish:npm:betato publish to npm beta channel (skip steps 7, 8, 12)npm run publish:npmto publish to npm stable channel
npm run publish:jsbinto update the examples on JSBin.comnpm run build:websiteto build the websitegit tag <version>(unless the library hasn't been updated)git push && git push --tagsto push the changes to github- open the github releases page, then
- edit the new tag and copy-paste the relevant changes from
CHANGELOG.md - upload the files
dist/ally.js,dist/ally.js.map,dist/ally.js.zipanddist/ally.js.tar.gz - mark as
pre-releaseif the library was pushed to beta channel
- edit the new tag and copy-paste the relevant changes from
npm run publish:algoliato publish the search indexnpm run publish:websiteto publish the website to thegh-pagesbranch
# Branch Rules
mastercontains fully integrated work that may not be released yet. All PRs have to point at this branch.gh-pagescontains the website. It is only updated throughnpm run publish:website. PRs against this branch must be rejected.
Got a better Idea to solve this? file an issue!