Let's build a full-stack app in under two minutes
One block of commands, and you have a Go API, a web app and an admin panel running a contacts book: contacts in groups, each with a photo. Pick whether you want Docker or not, paste, and read the rest of this page afterwards.
First, install Grit
One command. It puts a single binary on your PATH and needs nothing else installed to do it.
# macOS / Linuxcurl -fsSL https://gritframework.dev/install.sh | sh# Windows (PowerShell)iwr -useb https://gritframework.dev/install.ps1 | iex
Already have the Go toolchain? go install github.com/MUKE-coder/grit/v3/cmd/grit@latest does the same thing.
Check it worked, then carry on below:
grit version
Later, grit update moves you to the newest release. Full installation notes, including what the script does and how to install a specific version.
Then build the app
Quick start
Docker Desktop running. Postgres, Redis and MinIO come up with the project.
grit new contacts --triple --next
cd contacts
docker compose up -d
grit generate resource Group --fields "name:string,description:text"
grit generate resource Contact --fields "name:string,email:email,phone:tel, photo:file:image,group:belongs_to:Group"
grit migrate
grit seed
grit startlocalhost:3000
The web app
localhost:3001
The admin panel, with a screen for contacts and one for groups
localhost:8080/docs
The API reference, generated from the routes
Sign in to the admin panel with admin@example.com and admin123, add a group, then add a contact with a photo. The photo works on either path. Without Docker there is no MinIO to write to, so the API notices and keeps the file on local disk instead: you get the original, a converted JPEG and a thumbnail under storage/app, and the admin table shows it. Nothing above was hand-written: the two generate commands produced the models, migrations, API, Zod schemas, TypeScript types, React Query hooks and both admin screens.
The path from nothing to deployed
Seven steps, about ninety minutes end to end. Everything else in these docs is reference you can reach for later — this is the part to read in order.
Let your AI build it
One prompt that installs the Grit skill, teaches your agent the framework, and links every concept it needs. Works in Claude Code, Cursor, Codex, Windsurf, Copilot or any chat.
Prerequisites
Optional, and only the ones you need. Grit is Go on the back and Next.js on the front, running against Postgres and Redis in Docker — if any of those are new, these primers cover exactly the parts the rest of this path assumes.
Variables, structs, pointers, slices, maps, interfaces and goroutines, written for people who already know another language.
App Router, server versus client components, data fetching and routing — the parts the web app and admin panel are built on.
Enough to start and stop the Postgres, Redis and MinIO services behind a Grit project. You do not need to be an expert.
Run Go in the browser without installing anything. Useful for trying a snippet from the primer before it matters.
If you do not have a preference, use this
grit new my-app --triple --next
Go API, Next.js web app, admin panel, Postgres, Redis. It is the combination that gets the most use and the most testing, and every guide here assumes it unless it says otherwise.
The other four architectures are real and supported — single binary, double, API-only and mobile — but choose one because you have a reason, not because you were made to choose on day one.
Then build something real
Once the path above makes sense, the tutorials build complete applications rather than explaining features — a blog, a product catalogue, an ecommerce store, a SaaS with billing and tenants.
