one bank, all assets.
- Postgres DB schema
- Migration support using
golang-migrate
- Makefile for docker container creation, db up/down migrations
- Tests for DB transactions, preventing deadlocks
- Git workflow for tests for
main
branch - Server routes (+ tests) for
account
related functionality - Server routes (+ tests) for
transfer
related functionality - JWT token authentication
- PASETO token authentication
users/login
for user login using PASETO token authentication- PASETO token authentication for
/accounts
,/transfer
routes - Dockerfile (multi-stage to reduce image size)
- Docker Compose file to migrate and start DB before running main api
- Set Up AWS (RDS, Secrets Manager, IAM User/User Groups, etc.)
- CI workflow to deploy Docker image to AWS Container Registry using OpenID Connect
- Set up EKS configurations to automatically authenticate, deploy, set up ingress, issue & renew TLS certificates
- Add support for both access tokens & refresh tokens for user login
- Add integration tests for user login
- Add dbdocs integration
- gRPC server & HTTP Gateway server using protobufs
- evans support to ease development & testing
sqlc
to translate SQL into Go codetestify
to ease test writingmigrate
to migrate DB versions up/downviper
to read/set env & configuration variableso1egl/paseto
to add PASETO token authentication
- Add tests for all errors of
/transfers
to gain full coverage - Add tests for all errors of
/users
to gain full coverage