The repo provides:
- a preconfigured Nx application
- which uses NestJS and Angular
- has configured unit and e2e tests
- and is ready for CircleCI CI/CD integration
To run the application, please ensure that you have docker and docker-compose installed locally.
-
Then simply execute
docker-compose up --build
-
Wait a bit until backend and frontend have been successfully compiled
-
Open http://localhost in a browser
-
Profit
Nx is backed with:
- Shared entity models to have consistency on frontend and backend
- RenovateBot to update dependencies
- ESLint to lint frontend and backend
- Prettier to format files on save
- Husky to format files on commit
NestJS is backed with:
- express and helmet to handle requests
- TypeORM and MySQL to manage entities
- GraphQL and code first approach
- Unit tests via Jest with CircleCI
Angular is backed with:
- NGRX to store and select entities
- Apollo Angular to support GraphQL
- ngrx-entity-relationship to manage entities with their relationships
- Unit tests via jasmine and Karma with CircleCI and Puppeteer
- E2E tests via Protractor with CircleCI and Puppeteer
- ng-mocks to mock dependencies in tests
Keycloak is backed with:
- An app user with a username
user
and a passworduser
- A master user with a username
admin
and a passwordadmin
on http://localhost/auth/admin
smtp4dev which can be accessed on http://localhost/tools/emails/
CircleCI is backed with: