- loosely coupled
- interchangeable core application, UI, data objects, test
- testable
- flexible (e.g: can change database easily MySQL to MongoDB or any Database)
It might not be suitable for small application.
More information about this here
Go Forked and clone this project and cd inside msgo.
mv ./config/sample.conf.yaml ./config/conf.yaml
go run .
testing state
go test -v ./dto
testing route
go test -v ./controller
testing services
go test -v ./service
test all with one liners
go test --v ./service ./controller ./dto
Note: If you have mysql already running you can turn it off: systemctl stop mysql
docker-compose up --build
or
docker-compose up
MIT