Build
Connect & operate
Design & teams
Start hereScope a build in one callBring a spec, a wireframe, or a paragraph. You leave with an architecture, a timeline, and a number.Book a scoping call
AI software
LLM & data systems
Vibe coding
Ready to ship?Put AI where the work isAgents, RAG, and private LLMs wired into the systems your team already uses — not a chatbot bolted to a homepage.Discuss an AI project
Domain firstWe learn your workflow before we model itRegulated, operational, or high-volume — the constraints belong in the schema, not in a training doc.Talk about your domain
Plan smarterEstimate before you commitCost ranges, scope templates, and the questions we ask in discovery — free, no form.Open the cost calculator
Real conversationsTalk with a technical leadNo SDR, no discovery gauntlet. The person on the call is the one who scopes the build.Book a call
AI Coding Agents · zeromicro

go-zero

go-zero is a production-grade Go microservices framework with code generation tooling (goctl) that handles REST APIs, RPC services, and gRPC gateways. It bundles resilience patterns like circuit breakers, rate limiting, and timeout control out-of-the-box.

Source: GitHub — github.com/zeromicro/go-zero
33.2k
GitHub stars
4.3k
Forks
Go
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryzeromicro/go-zero
Ownerzeromicro
Primary languageGo
LicenseMIT — OSI-approved
Stars33.2k
Forks4.3k
Open issues271
Latest releasev1.10.2 (2026-05-31)
Last updated2026-07-06
Sourcehttps://github.com/zeromicro/go-zero

What go-zero is

Go-based web/RPC framework using spec-driven development with .api DSL files. Goctl generates production code for Go, iOS, Android, Kotlin, Dart, TypeScript, and JavaScript. Built-in middleware support, service discovery, load balancing, and adaptive protection mechanisms (circuit breaker, load shedding, concurrency control).

Quickstart

Get the go-zero source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/zeromicro/go-zero.gitcd go-zero# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Cloud-native microservices at scale

Designed for high-availability systems with millions of concurrent users. Built-in resilience patterns eliminate boilerplate for timeout, rate limit, and circuit breaker logic.

Rapid API and service scaffolding

Goctl generates boilerplate code from .api specifications, reducing manual setup time. Multi-language code generation (Go, TS, Kotlin, Dart) accelerates client/server development.

Standardized microservice architecture

Opinionated structure (config, handler, logic, svc, types) enforces consistency across teams. Service mesh features and tracing support simplify multi-service debugging.

Implementation considerations

  • Goctl code generation requires maintaining .api specifications in sync with code; drift can cause runtime issues. Plan for code review workflows that include DSL changes.
  • Framework is opinionated on directory structure and separation of concerns (handler/logic/svc). Teams must adopt this pattern consistently or lose framework benefits.
  • Built-in resilience features are configurable but require understanding of timeout, concurrency, and load-shedding parameters for your workload. Defaults may not suit all use cases.
  • Service discovery integration depends on external systems (e.g., Consul, etcd, Kubernetes). Plan infrastructure setup alongside framework adoption.
  • Latest release (v1.10.2, May 2026) with active maintenance; evaluate breaking changes and migration guides when upgrading between major versions.

When to avoid it — and what to weigh

  • Simple monolithic or hobby projects — Framework adds architectural overhead (service context, config management, separate logic layer). Overkill for single-service applications or proof-of-concepts.
  • Heavy reliance on non-Go ecosystems — Primary benefits are in Go codebases. Multi-language code generation covers clients but server-side is Go-only. Integration with Java/Node.js backends may require custom adapters.
  • Custom or exotic storage/protocol needs — Goctl generates common patterns. Highly specialized requirements (custom protocols, obscure databases) may require manual code or fork maintenance.
  • Teams unfamiliar with Go or microservices — Learning curve combines Go language, microservices patterns, and framework idioms. Requires upfront investment in team training and architecture design.

License & commercial use

MIT License permits commercial use, modification, and distribution with attribution and no liability. No proprietary restrictions on derivatives or closed-source projects.

MIT is a permissive OSI-approved license. Commercial use is permitted without restrictions or vendor approval. Verify your legal/compliance team agrees for production deployments, especially if incorporating modifications.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceHigh
Security considerations

Framework includes request parameter auto-validation and built-in timeout/rate-limit primitives that mitigate common DoS vectors. No explicit data regarding vulnerability disclosure, security audits, or encryption defaults. Review error handling to avoid leaking sensitive information in logs/responses. Validate goctl-generated code does not introduce injection vulnerabilities. Assess service discovery and inter-service auth requirements for your threat model.

Alternatives to consider

Gin

Popular lightweight HTTP framework; lacks built-in resilience patterns and code generation. Better for simple REST APIs; requires manual middleware for circuit breakers, rate limiting.

gRPC + gRPC-gateway

Raw gRPC + gateway offers fine-grained control over Protocol Buffers and service definitions. More flexible but requires manual boilerplate for resilience, validation, and configuration management.

Micro (CNCF)

Service mesh and microservices framework with polyglot support. Less opinionated than go-zero; may offer better integration with existing heterogeneous stacks.

Software development agency

Build on go-zero with DEV.co software developers

Review the architecture guide, run the quick-start example, and assess goctl DSL fit for your team's coding style and API patterns.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

go-zero FAQ

Can I use go-zero for REST APIs only, without microservices?
Yes. Framework supports REST API generation via goctl. However, architecture is optimized for microservices; simpler projects may find Gin or stdlib net/http less heavyweight.
Does goctl code generation require modifying generated files?
Goctl separates generated boilerplate from user logic (handler/logic/svc). Logic files are hand-editable; regenerating goctl code can overwrite handler/route scaffolding. Plan regeneration workflows carefully.
What monitoring/metrics does go-zero provide?
Framework supports tracing and metrics integration via middleware. Specific exporters (Prometheus, Jaeger, etc.) require custom implementation or third-party plugins. Not clearly detailed in provided data.
Is go-zero suitable for teams new to Go?
Framework adds architectural structure on top of Go; learning curve includes both language and microservices patterns. Recommend Go fundamentals training before adoption for new teams.

Software developers & web developers for hire

go-zero rarely ships on its own. As a software development company, DEV.co handles the surrounding work — data modeling, service integration, deployment, and the ai coding agents glue code that production actually requires.

Evaluate go-zero for your microservices?

Review the architecture guide, run the quick-start example, and assess goctl DSL fit for your team's coding style and API patterns.