This project was initialized with Nx as the monorepo build system. For the backend I have chosen the following main technologies:
- UI: Angular, NGRX and tailwindcss.
- API: NestJs
- Due to time limitations I decided to not use a database but instead load the testdata in memory. This means that the changes get not persisted after shutting down the api server.
- Block Item:
- UI: Will change the Report State from "Open" to "Blocked"
- API: Will replace the respective item in memory with the new state
- Resolve Item:
- UI: Will be removed from the List
- API: Will replace the respective item in memory with the new state
- API: get
api/reportswill return all reports with resolved items filtered out. (Filter parameter was not implemented due to time constraint )
- Run
npm install - Run
npm run start:apiServer runs on http://localhost:3333/api. - Run
npm run start:ui. Navigate to http://localhost:4200/.
- Run
npm run test:uito execute the frontend unit tests via Jest. - Run
npm run test:apito execute the backend unit tests via Jest.
Run npm run test:e2e to execute the end-to-end tests via Cypress.