# go-zero

A cloud-native Go microservices framework with cli tool for productivity.

Repository: https://github.com/zeromicro/go-zero
Canonical: https://ross.abutalabs.com/products/go-zero
Homepage: https://go-zero.dev
Language: Go
License: MIT
License Family: permissive
Topics: golang, microservice, rpc-framework, web-framework, rpc, restful-api, code-generation, microservices, go, restful, cloud-native, microservice-framework, microservices-architecture, rest-api, framework, gateway, grpc-gateway, ai-native, ai-native-development, spec-driven-development
Last push: 2026-08-24T19:54:12+00:00
Link (homepage): https://go-zero.dev
Link (site_page): https://go-zero.dev/getting-started
Link (site_page): https://go-zero.dev/guides/quickstart/hello-world

## Health v2 (maintenance only)
Score: 98/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 95, longevity 100
- inputs: {"age_days": 2217, "days_push": 9, "days_rel": 32, "gap_med": 10.0, "n_releases_24m": 39}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 33280, forks 4313 (observed 2026-08-28T04:11:58.205414+00:00)

## What it is
go-zero is a cloud-native Go web and RPC microservices framework with built-in engineering practices like circuit breaking, rate limiting, adaptive load shedding, and timeout control. It includes goctl, a CLI code generator that produces production-ready API and RPC service code from a simple .api DSL.

## Use cases
- build microservices in go
- generate rest api server from api definition
- go rpc framework with grpc
- scaffold a production-ready http service
- add circuit breaker and rate limiting to go services
- generate multi-platform client code from api spec

## When to choose
- you are building Go microservices and want resilience features built in without extra configuration
- you want code generation from a simple API DSL to reduce boilerplate
- you need a battle-tested framework proven at very high traffic scale
- you want both REST and RPC services from one toolchain

## When to avoid
- you prefer minimal libraries over opinionated, code-generating frameworks
- your project is not in Go
- you need full control over project structure rather than goctl's generated layout
- you only need a lightweight HTTP router without microservice machinery

## Facets
- artifact type: framework
- maturity: stable
- function: web-framework, rpc, api-framework, cli, middleware, rate-limiting, routing
- domain: microservices, backend, web-development, developer-tools, apis
- platform: go, windows, cloud, cli
- tags: cloud-native, goctl, resilience, circuit-breaker, grpc, restful-api, api-dsl, load-shedding, cncf-landscape, code-generation, linux, macos, docker

## Member repositories
- zeromicro/go-zero (main) score 98
- zeromicro/zero-examples (examples) score 63

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:58.205414+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T16:28:28.969340+00:00, confidence not recorded.
  - readme: https://github.com/zeromicro/go-zero (fetched 2026-08-28T04:11:58.205414+00:00, sha 4a4e0a9a51b6)
  - homepage: https://go-zero.dev (fetched 2026-08-29T07:48:40.994128+00:00, sha 3244647fba16)
  - site_page: https://go-zero.dev/getting-started (fetched 2026-08-29T07:48:41.003763+00:00, sha 1b898bc4754f)
  - site_page: https://go-zero.dev/guides/quickstart/hello-world (fetched 2026-08-29T07:48:41.007165+00:00, sha c30801468e94)
- Data as of 2026-08-30T08:39:29.467469+00:00.
