rapid-go is a boilerplate that accelerates API development based on layered architecture and clarifying responsibilities.
- golang 1.11 (I will actively raise go version)
- mysql (correspondence such as firestore is easy)
- Chi (as Router)
- squirrel (as query builder)
- sqlx (map the result of sql to an object)
- gin (for hot reload ,not framwork)
- docker
- mockgen (generate mock codes from inteface)
- zap (as logger)
- firebase auth (as authenticate service)
- init
make init
- build
> make build
- start
> make start
> curl http://localhost:3001/ping
- stop
> make down
- generate mock from interface (service,domain/repository)
> make mockgen_task
- run test
> make test
- data layer
- It is responsibility to handle the data
- interested in database etc.
- struct for setting the result of SQL etc....
- write the actual data manipulation process
- domain model
- write interface for infrastructure/repository and convert entity to domain
- write application logic using repository
- write the process about request and response