- Clone git repo
- Run
npm install. You may need to installnpmfrom npmjs.com. - Build and deploy with
gulp deploy. You may need to installgulpby runningnpm install --global gulp.
If you are using Visual Studio Code, you will want to get Intellisense typings for all of the libraries that are in use.
- Install the TypeScript Definition manager by running
npm install --global tsd. - Build the
typingsdirectory by runninggulp install-tsd. - To add new typings, run
tsd query <typing1> <typing2> <typingN> --action install --save.
- Install
npm-check-updates:npm install --global npm-check-updates. - Check for new dependencies:
ncu. - If there are new dependencies, update with:
ncu -u.
- Note that this could break some things in the system! This just keeps dependencies up-to-date.
- Build the server with
gulp buildif it has not already been built. Several files should now be within a directory namedbuild. - Start the NodeJS server with
gulp.
- Note that if port
8000is not opened, you must define the environment variableprocess.env.PORTto an open port.
- The application should now be running locally. Point your favorite browser to
localhost:8000to access it.
Both unit tests and end-to-end tests can be run with gulp test.
RealTimeTradeGame uses Karma for unit tests. You can test the application by running gulp unit-tests.
RealTimeTradeGame uses Protractor for end-to-end tests. You can run those tests with gulp e2e-tests.
If you wish to contribute, keep the following in mind:
- Write Karma unit tests for any new functionality.
- If applicable, write Protractor end-to-end tests for visual additions.
- Run the tests (
gulp test) such that they all pass. - Check the coverage report. Test coverage should not be less than the master branch.
- Submit a pull request to the GitHub repository.