goboot v0.1.0
First public release of goboot — an annotation-driven, compile-time application framework for Go. You annotate ordinary Go types/methods (// @Service, // @RestController, // @GetMapping, // @Query, …); the goboot CLI reads them, builds a typed model + dependency graph, validates it, and generates plain, readable Go. No runtime reflection for DI, no classpath scanning.
Highlights
- DI & HTTP: constructor-injected components, controllers with all HTTP verbs, request binding/validation, RFC-7807
Problemerrors,@ExceptionHandleradvice, content negotiation. - Repositories:
@Query/@Exec/@Batch/@Callgenerated over a driver-neutral DB seam; dialects for postgres, mysql, sqlserver, question. - Interception (service proxies):
@Transactional,@Traced,@Timed,@Logged,@Audit,@Retry,@Timeout,@CircuitBreaker,@RateLimit,@Bulkhead,@Authorize. - Config, lifecycle, scheduling:
@ConfigurationProperties,@PostConstruct/@PreDestroy,@Scheduled,@Profile/conditionals. - Plugins (compile-time, self-bootstrapping from
goboot.yaml):plugins/oracle(dialect),plugins/openapi(OpenAPI 3 generator),plugins/lint(REST linter). Plugins can drive generation from their own annotations. - Adapters (separate modules):
adapters/pgx(PostgreSQL),adapters/otel(tracing),adapters/prometheus(metrics). - Tooling: a VS Code extension (
editors/vscode) that highlights annotations.
Install
go get github.com/zombocoder/goboot@v0.1.0
go install github.com/zombocoder/goboot/cmd/goboot@v0.1.0Adapters/plugins are versioned per-submodule, e.g. go get github.com/zombocoder/goboot/adapters/pgx@v0.1.0.
Requires Go 1.25.