#88th of 45 in Backend and cloud templates
goa
Design-first Go framework that generates HTTP, gRPC and JSON-RPC services
- Stars
- 6.1k
- License
- MIT
- Last commit
- Nov 2026
- Last release
- Oct 2026
- Language
- Go
6,047 on 20 Apr 20266,123 on 9 Nov 2026
From GitHub's daily star counts.
Checked on GitHub.
Overview
Goa takes a service contract written in a Go DSL and generates server and client code, request validation, CLI clients, OpenAPI specs and protobuf definitions for HTTP, gRPC and JSON-RPC. You implement the generated service interface in plain Go. The repo also ships a coding-agent skill, and a companion project, Goa-AI, covers agents and MCP servers.
Who it is for: Go developers building typed multi-transport APIs, with or without coding agents
Strengths
- One design generates HTTP, gRPC and JSON-RPC transports plus Go clients and a CLI
- Emits OpenAPI and Protocol Buffer definitions from the same contract
- Supports streaming over WebSocket, SSE and gRPC streams
- Generated interfaces let the Go compiler flag code needing updates after a design change
Weaknesses
- Requires Go 1.27.3 or later as of v3.35.0
- gRPC output needs protoc and Go protobuf generators installed
- Upgrading from v3.30.x involves intentional source and transport changes
- Go only; the contract is written in a Go DSL
What it needs
- Go
- Needs Go 1.27.3+, protoc (for gRPC and JSON-RPC example)
What changed
“Install Go 1.27.3 or newer before upgrading goa.design/goa/v3 to v3.35.0, and update go 1.27.3 in your module's go.mod and CI/container build images.”
CVE-2026-111943, CVE-2026-97032, CVE-2026-78659, CVE-2026-78660, CVE-2026-78667, CVE-2026-78669, CVE-2026-78663, CVE-2026-56866, CVE-2026-94439, CVE-2026-94440, CVE-2026-97031, CVE-2026-94448, CVE-2026-97030, CVE-2026-56857, CVE-2026-94444, CVE-2026-94447. “Goa v3.35.0 requires Go 1.27.3 so generated services pick up critical standard-library certificate-chain and HTTP/2 security fixes automatically, cuts goa gen time by 6.5x across real-world multi-ser…”
- v3.34.0 ↗ (opens in a new tab)Breaking
“The upgrade guide has a v3.34.0 section for each change above with deployment order and rollback. Regenerate your services with the new CLI. Deploy regenerated gRPC clients before or together with se…”
- v3.33.0 ↗ (opens in a new tab)Breaking
“For two nonnil inputs, goa.MergeErrors returns a fresh ServiceError”
From the release notes. No flag means the note does not say so, not that the upgrade is safe.
Quick answers
Is goa open source?
Yes. Its code is on GitHub under the MIT license.
Also in Backend and cloud templates
See all 45| Rank | Project | Score |
|---|---|---|
| 1 | fastapiPython web framework for typed REST APIs with automatic OpenAPI docs | 90 out of 100 |
| 2 | fiberExpress-style HTTP web framework for Go, built on fasthttp | 90 out of 100 |
| 3 | generator-jhipsterCode generator for Java apps with Angular, React or Vue frontends | 90 out of 100 |
| #4 | serverlessCLI that deploys AWS Lambda code and infrastructure from serverless.yml | 88 out of 100 |
| #5 | echoMinimalist Go web framework with a radix-tree router and middleware | 86 out of 100 |