gotchi is a reusable backend core for Go services with an opinionated stack:
chipgx+goosescssessions (pgxstore)- OIDC auth with multi-tenant membership enforcement
- Postgres RLS tenancy helpers
- OpenAPI validation + oapi-codegen mounting
module github.com/kusold/gotchiUse app.New(...) to construct and run an application with minimal wiring.
gotchi init <app-name>gotchi add feature <name>gotchi doctor
Run this against a disposable Postgres database:
DATABASE_URL='postgres://postgres:postgres@localhost:5432/gotchi_regression?sslmode=disable' ./scripts/migration-regression.shThis repo uses prek for commit hooks and enforces Conventional Commit messages via a commit-msg hook.
Install and set up hooks:
brew install prek
prek install --install-hooks --hook-type commit-msgThis repo includes a cross-system flake-parts dev shell with Go tooling and prek.
Enable automatic shell loading with direnv:
direnv allowOr enter it manually:
nix develop/Users/mike/code/repos/kusold/freezer-catalog/Users/mike/code/repos/kusold/gotchi/examples/reference-app