- Install latest Node version
- Install Docker Compose
- run
docker compose up. This will boot the Postgres database container. - Open another terminal
- Run
npm install. - Run
npm run dev. This start the backend server. - You can now make API calls to
http://localhost:3001/api/
- GET http://localhost:3001/api/accounts/:userEmail
- POST http://localhost:3001/api/transactions/:userEmail/send
- POST http://localhost:3001/api/transactions/:userEmail/receive
- Backend and DB balance validation
- Row lock to ensure multiple users update the same record correctly
- DB atomic transaction to avoid transactions/balance issues
- Avoid ORM to use simple DB connector
- Add DB indexes
- Enable https
- Enable CI/CD
- Add logger
- Use sequelize or other ORM
- Add security
- Add periodical balance so we don't need to process all transactions