A simple shipping app to add parcels and list them.
This app consists of two apps - backend written on NodeJs + NestJs and frontend written on Angular.
This app has docker compose support, so to run it, just execute
cd <project_root>
docker compose up --build
Open ./backend/src/app.module.ts
and change host from database
to localhost
.
And then:
docker compose up database
cd <project_root>/backend
npm install
npm run start:dev
cd <project_root>/frontend
npm install
ng serve
Then go to http://localhost:8080.
If by some reason you need API - it's running on http://localhost:3000.
Before going to production they should be fixed.
- Logging is missed in both apps
- Error handling is very poor
- Only happy path works. If any of the fields are empty on parcel creation the user won't see why (console logs are visible only)
- Validation is done in absolutely wrong way
- Submit on Enter doesn't work
- Overall there are some things that I'd improve in frontend
- Unit tests are missing
- Configuration values and secrets are stored just in code - they should be moved to environment variables and read from there.