├── app
├── cache
├── config
├── database
├── errs
├── logger
├── middleware
├── migrations
└── validator
Application Layer and business logic. It contains the application logic and is organized into subdirectories for business domains or features.
└── app
├── user
└── admin
├── admin.go
└── handler.go
Cache connector, e.g., Redis
Configuration files and environment variables
Database connector, e.g., MySQL, PostgreSQL
Custom error types and error handling
Logger setup and configuration
Middleware for request processing, e.g., authentication, logging
Validation logic for request data, e.g., using go-playground/validator
Migration files .sql
for database schema changes, e.g., using kongsakchai/simple-migrate
go install golang.org/x/tools/cmd/gonew@latest
gonew github.com/kongsakchai/gotemplate github.com/yourname/projectname