Golang Clean Architecture REST API example
Last updated Jul 4, 2026
958
Stars
167
Forks
4
Issues
0
Stars/day
Attention Score
42
Topics
Language breakdown
Go 97.6%
Makefile 1.2%
Shell 1.0%
Dockerfile 0.2%
βΈ Files
click to expand
README
Golang Clean Architecture REST API example π
π¨βπ» Full list what has been used:
- echo - Web framework
- sqlx - Extensions to database/sql.
- pgx - PostgreSQL driver and toolkit for Go
- viper - Go configuration with fangs
- go-redis - Type-safe Redis client for Golang
- zap - Logger
- validator - Go Struct and Field validation
- jwt-go - JSON Web Tokens (JWT)
- uuid - UUID
- migrate - Database migrations. CLI and Golang library.
- minio-go - AWS S3 MinIO Client SDK for Go
- bluemonday - HTML sanitizer
- swag - Swagger
- testify - Testing toolkit
- gomock - Mocking framework
- CompileDaemon - Compile daemon for Go
- Docker - Docker
Recomendation for local development most comfortable usage:
make local // run all containers make run // it's easier way to attach debugger or rebuild/rerun projectππ¨βπ»π Docker-compose files:
docker-compose.local.yml - run postgresql, redis, aws, prometheus, grafana containrs docker-compose.dev.yml - run docker development environment docker-compose.delve.yml run development environment with delve debugDocker development usage:
make dockerLocal development usage:
make local make runSWAGGER UI:
https://localhost:5000/swagger/index.html
Jaeger UI:
http://localhost:16686
Prometheus UI:
http://localhost:9090
Grafana UI:
http://localhost:3000
π More in this category