Getting Started
Gofasta is a Go backend toolkit: a CLI that scaffolds projects and generates code, backed by a library of independent pkg/* packages you can adopt or replace one at a time. This section is the shortest path from an empty directory to a running service.
Read the four pages in order the first time — each one assumes the previous.
The path
- Introduction — What Gofasta is, what it generates, and the design decisions behind it: plain Go code, no runtime wrapper, and an agent-native surface (
AGENTS.md, structured CLI output, a debug endpoint set) that AI coding assistants can drive directly. - Installation — Install the CLI with
go installor the pre-built binary script. Covers macOS, Linux, and Windows (WSL), verifying the install withgofasta doctor, and optional shell completion for bash, zsh, and fish. - Quick Start — Scaffold a project, bring the whole dev loop up with one command, and generate your first resource. About five minutes end to end.
- Project Structure — A tour of what
gofasta newwrites:app/(models, services, controllers, DTOs, jobs, tasks),db/migrations/,cmd/,config.yaml,compose.yaml, and the supportingtestutil/and.github/workflows/tree.
What you have at the end
A Go module you own outright — a REST (and optionally GraphQL) service with database migrations, JWT authentication, dependency injection wired by Wire, background jobs, and a Docker Compose file for its dependencies. No generated code calls back into a hidden runtime; every file is ordinary Go you can read, edit, or delete.
Where to go next
- Guides — Task-focused walkthroughs: REST, GraphQL, migrations, authentication, background jobs, testing, deployment.
- CLI Reference — Every command, flag, and output shape.
- Package Library — The
pkg/*packages a scaffolded project imports by default. - White Paper — The longer argument for the toolkit’s design.
Last updated on