Yeoman generator
Yeoman generator for creating ES6 javascript libraries with JSPM. Generated directory is configured to work with testing stack: karma-jspm, Mocha, Chai, Sinon, Travis, Sauce Labs
##Instalation
###Installing generator
npm install -g yo
npm install -g generator-jspm-lib
###Scaffolding library
mkdir mylib & cd mylib
yo jspm-lib
Generator will ask you for your GitHub username which will be used for jspm configuration.
###Set GitHub authentification to avoid GitHub rate limit:
jspm registry config github
###Setup Travis with Github and Sauce Labs
-
We assume you have registered GitHub, NPM, Travis and Sauce Labs accounts
-
Install travis cli by:
gem install travis
- Enable you new lib repo for travis build by running comman:
travis enable
- Add travis environment variables by command line:
travis env set SAUCE_USERNAME my_sauce_user
travis env set SAUCE_ACCESS_KEY my_sauce_key
- Set GitHub authentification env variable to avoid GitHub rate limit in travis build:
travis env set JSPM_AUTH "$(node -pe 'JSON.parse(process.argv[1]).registries.github.auth' "$(cat ~/.jspm/config)")"
- Enable NPM deployment from travis build
travis setup npm
It is recommended by jspm to release your libraries to npm endpoint. For more details see travis documentation.
##Development workflow
###JSPM linking (with watching)
gulp link
###Depoly new release to NPM
gulp deploy-master
###Testing
karma start
##Using your library In any jspm project you can install your library with this command:
jspm install npm:REPO
or make a pull request to JSPM Reigistry