configkit
Zero-dependency env loader. Vendored, audited, 12-factor by default. Stable-ish — ready for real use.
GoBeaver is a family of small, composable Go packages for building secure, scalable services. Pull in only the pieces you need — or use the full kit and the GoBeaver CLI to scaffold a complete modular monolith.
configkit
Zero-dependency env loader. Vendored, audited, 12-factor by default. Stable-ish — ready for real use.
filekit
Filesystem abstraction across 7 backends, with stackable decorators (cache, encrypt, validate). Stable-ish.
beaverkit
The wider toolkit: database, krypto, oauth, cache, slack, captcha, urlsigner. Alpha — APIs may shift.
GoBeaver CLI
Scaffold and manage GoBeaver projects from the terminal. Alpha.
go get github.com/gobeaver/configkit github.com/gobeaver/filekitLoad config from the environment, then write a file through the filesystem abstraction:
type Config struct { DataDir string `env:"DATA_DIR" envDefault:"./data"`}
func main() { var cfg Config configkit.MustLoad(&cfg)
fs := localfs.New(cfg.DataDir) if _, err := fs.Write(context.Background(), "hello.txt", []byte("hi")); err != nil { log.Fatal(err) }}Swap localfs for S3, GCS, or any other driver without touching the rest.
Full quickstart →
GoBeaver is supported by:
Thanks to everyone who has contributed to GoBeaver:
See everyone who has contributed on GitHub.