- Node.js
- Sequelize : Supports (MySql, MSSql, Postgres, Sqlite) databases
- Angular
- Express.js
- Angular CLI
Without SSR
npm run dev
ORyarn dev
With SSR
- Build client and server in watch mode
npm run build:ssr
ORyarn build:ssr
- Serve with SSR
npm run serve:ssr
ORyarn serve:ssr
Without SSR
- Build client and server
npm run build:prod
ORyarn build:prod
- Serve without SSR
npm run serve:prod
ORyarn serve:prod
With SSR
- Build client and server
npm run build:prod
ORyarn build:prod
- Serve with SSR
npm run serve:prod:ssr
ORyarn serve:prod:ssr
Unit tests using Jest.
Run test
npm test
ORyarn test
End-to-end tests using Testcafe.
- Start application
npm run deve2e
ORyarn deve2e
- Run live e2e tests
npm run e2e
ORyarn e2e
- intall heroku cli from https://devcenter.heroku.com/articles/heroku-cli
- From heroku account settings (https://dashboard.heroku.com/account) page copy API key
- Paste this key in circle CI Account Settings > Heroku API Key section
- Circle CI > Project > Projectname > Settings > Continuous deployment > Heroku Deployment > Step 2: Associate a Heroku SSH key with your account
- Setup local repository with heroku: login to heroku: heroku git:remote -a ngnode-fullstack If you get error described here: https://discuss.circleci.com/t/heroku-deployment-from-circle-ci-failing/11117/2 do force git push git push heroku master -f
- Start deployment
- heroku container:login
- docker-compose up
- docker tag image-id registry.heroku.com/ngnode-fullstack/web
- docker push registry.heroku.com/ngnode-fullstack/web
- heroku container:release web -a ngnode-fullstack
- Put this configuration in angular.json file under serve section:
"ssl": true,
"sslKey": "ssl/server.key",
"sslCert": "ssl/server.crt"
-
Create ssl key and certificate: ssl/generate.sh using bash, This will generate key and crt files.
-
Install crt file in Windows trusted root certificates or equivalent in mac and linux