Quokka templates
$ # Using SSH
$ qk git@github.com:Depado/templates.git -p go myproject
$ # Using HTTPS
$ qk https://github.com/Depado/templates.git -p go myproject
This template can be used to generate a base Go application.
- CLI
- Configurable zerolog logger (format, level, caller)
- Inject version information (commit hash, latest tag, build date) with Makefile
- License selector
- Optional renovate configuration
- Optional example configuration file with default values for the app
- Optional docker support
- Dockerfile with multi-step build with distroless container image for small and secure images
- Uses
make
while building to inject version information - Adds Makefile rules (tag with
latest
and commit hash)
- Optional CI support
- GitHub Actions: Build, test and run golangci-lint
- Drone: Build, test and run golangci-lint
- Optional Gin integration:
- Adds the proper configuration structs and flags
- Graceful shutdown support
- CORS customization and support
- Prometheus instrumentation using ginprom
- Optional unified logger instead of gin's default one
- Optional goreleaser config