github caiolandgraf/grove v1.0.0
v1.0.0 — The Go scaffold CLI you actually want to use

latest releases: v1.5.5, v1.5.4, v1.5.3...
one month ago

Grove wires together GORM, fuego, Atlas and gest into a single CLI so you
can go from zero to a production-ready Go API in minutes — without writing
boilerplate, configuring tools or memorizing project conventions.

✦ Generators

Scaffold any layer of your application with one command. Every generator
respects existing files — it prints SKIPPED and exits cleanly if the
target already exists.

Command Output
grove make:model <Name> GORM model with UUID PK, soft-delete and typed repository
grove make:model <Name> -m Model + Atlas migration in one shot
grove make:model <Name> -mc Model + migration + controller in one shot
grove make:controller <Name> Full CRUD controller with fuego typed handlers
grove make:dto <Name> Create/Update request structs + response DTO
grove make:middleware <Name> func(http.Handler) http.Handler middleware skeleton
grove make:migration <name> Atlas migrate diff against live schema
grove make:resource <Name> Model + controller + DTO in one shot

🧪 Testing

Built-in support for gest — a
Jest-inspired testing framework for Go with beautiful output and zero
dependencies.

grove make:test UserService   # scaffolds internal/tests/user_service_spec.go
grove test                    # runs all specs (always updates gest to latest)
grove test -c                 # runs specs + per-suite coverage report

grove make:test automatically creates internal/tests/main.go (the gest
entrypoint) and runs go get github.com/caiolandgraf/gest@latest on first
use. Every subsequent grove test call keeps gest up to date automatically.

⚙️ Server & Build

grove serve       # starts dev server — uses air for hot-reload if available
grove build       # compiles to ./bin/app  (-o to override output path)

🗄️ Database

All migration commands are thin wrappers around the Atlas CLI.

grove migrate              # apply all pending migrations
grove migrate:rollback     # roll back the last applied migration
grove migrate:status       # show applied / pending migrations
grove migrate:fresh        # drop all tables and re-apply from scratch ⚠️
grove migrate:hash         # rehash atlas.sum after manual edits

🚀 Installation

go install github.com/caiolandgraf/grove@latest

Requirements: Go 1.22+, Atlas CLI for migration commands.

📖 Documentation

Full docs, architecture guide and configuration reference at
caiolandgraf.github.io/grove.


**Full Changelog**: https://github.com/caiolandgraf/grove/commits/v1.0.0

Don't miss a new grove release

NewReleases is sending notifications on new releases.