#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
Stars, last 29 weeks+76
20 Apr 2026: 6,047 stars27 Apr 2026: 6,047 stars4 May 2026: 6,051 stars11 May 2026: 6,052 stars18 May 2026: 6,056 stars25 May 2026: 6,056 stars1 Jun 2026: 6,056 stars8 Jun 2026: 6,060 stars15 Jun 2026: 6,064 stars22 Jun 2026: 6,066 stars29 Jun 2026: 6,071 stars6 Jul 2026: 6,072 stars13 Jul 2026: 6,072 stars20 Jul 2026: 6,075 stars27 Jul 2026: 6,075 stars3 Aug 2026: 6,077 stars10 Aug 2026: 6,077 stars17 Aug 2026: 6,078 stars24 Aug 2026: 6,079 stars31 Aug 2026: 6,084 stars7 Sept 2026: 6,093 stars14 Sept 2026: 6,093 stars21 Sept 2026: 6,095 stars28 Sept 2026: 6,103 stars5 Oct 2026: 6,106 stars12 Oct 2026: 6,109 stars19 Oct 2026: 6,110 stars26 Oct 2026: 6,112 stars2 Nov 2026: 6,119 stars9 Nov 2026: 6,123 stars

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

  1. v3.35.0 ↗ (opens in a new tab)BreakingSecurity fix

    “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…”

  2. “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…”

  3. “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
Also in Backend and cloud templates
RankProjectScore
1fastapiPython web framework for typed REST APIs with automatic OpenAPI docs104.6k starsMIT90 out of 100
2fiberExpress-style HTTP web framework for Go, built on fasthttp40.3k stars+130 (+0.3%) in 30 daysMIT90 out of 100
3generator-jhipsterCode generator for Java apps with Angular, React or Vue frontends22.5k starsApache-2.090 out of 100
#4serverlessCLI that deploys AWS Lambda code and infrastructure from serverless.yml46.9k starscustom license88 out of 100
#5echoMinimalist Go web framework with a radix-tree router and middleware32.8k stars+73 (+0.2%) in 30 daysMIT86 out of 100