Where possible package dependencies are stored at top level node_modules and shared down to packages to help speed up install time. Note npm auto traverses up to the parents to find imports.
- Clone the project from Git repo
- Make sure you have node installed (install Node.js LTS v4.X.X, NPM 2.X)
To be updated
Dev mode enables Webpack hot loading with Redux dev tools - code changes are saved and pushed directly to the browser. TBD
TBD
Tests live at /tests/e2e within appropriate packages Protractor is included for E2E testing, loads selenium web driver and allows for JS based automation tests using familiar Jasmine BDD test syntax.
- Ensure the webserver is running
- Configure properties as appropriate at tests/e2e/protractor.json (to set browser type etc)
- Execute Protractor tests from package top level e.g packages/itm-web
npm run e2e
- Screenshots are posted to
tests/out/e2e
including screenshots and compiled report.html
To be updated
All projects are covered with eslint rules to common standard (based on airbnb) https://github.ibm.com/ess/javascript-guide It is advised to run eslinter in your IDE as you develop - as all code will be linted on the CI pipeline
To be updated
TBD
See deployment
folder for details on Docker container packaging of the application.
Search Aggregation Application which provides a new Smarter rollup of ActivityStream items. Introducing a stacked relationship between items based on followed entities Maintained by Search team in Haifa.
Generally as follows
- npm run install (install top level dependencies shared throughout)
- npm run link-packages (link projects and install sub dependencies)
- npm run test (run the
npm run test
script in all packages) - npm run lint (run the
npm run lint
script in all packages) - Production build and run
- E2E target on itm-web
- Production stop server
See Jenkins Server [https://connjenk.swg.usma.ibm.com/jenkins/view/CNext/job/itm-web-client/]
To be updated