[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-1900":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":22,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":45,"readmeContent":46,"aiSummary":47,"trendingCount":16,"starSnapshotCount":16,"syncStatus":48,"lastSyncTime":49,"discoverSource":50},1900,"go-zero","zeromicro\u002Fgo-zero","zeromicro","A cloud-native Go microservices framework with cli tool for productivity.","https:\u002F\u002Fgo-zero.dev",null,"Go",33092,4301,311,141,0,22,94,13,45,"MIT License",false,"master",[25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],"ai-native","ai-native-development","cloud-native","code-generation","framework","gateway","go","golang","grpc-gateway","microservice","microservice-framework","microservices","microservices-architecture","rest-api","restful","restful-api","rpc","rpc-framework","spec-driven-development","web-framework","2026-06-12 02:00:34","# go-zero\n\u003Cp align=\"center\">\n\u003Cimg align=\"center\" width=\"150px\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fzeromicro\u002Fzero-doc\u002Fmain\u002Fdoc\u002Fimages\u002Fgo-zero.png\">\n\u003C\u002Fp>\n\ngo-zero is a web and rpc framework with lots of builtin engineering practices. It’s born to ensure the stability of the busy services with resilience design and has been serving sites with tens of millions of users for years.\n\n\u003Cdiv align=center>\n\n[![codecov](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fzeromicro\u002Fgo-zero\u002Fbranch\u002Fmaster\u002Fgraph\u002Fbadge.svg)](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fzeromicro\u002Fgo-zero)\n[![Go Report Card](https:\u002F\u002Fgoreportcard.com\u002Fbadge\u002Fgithub.com\u002Fzeromicro\u002Fgo-zero)](https:\u002F\u002Fgoreportcard.com\u002Freport\u002Fgithub.com\u002Fzeromicro\u002Fgo-zero)\n[![Release](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Frelease\u002Fzeromicro\u002Fgo-zero.svg?style=flat-square)](https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fgo-zero)\n[![Go Reference](https:\u002F\u002Fpkg.go.dev\u002Fbadge\u002Fgithub.com\u002Fzeromicro\u002Fgo-zero.svg)](https:\u002F\u002Fpkg.go.dev\u002Fgithub.com\u002Fzeromicro\u002Fgo-zero)\n[![Awesome Go](https:\u002F\u002Fcdn.rawgit.com\u002Fsindresorhus\u002Fawesome\u002Fd7305f38d29fed78fa85652e3a63e154dd8e8829\u002Fmedia\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Favelino\u002Fawesome-go)\n[![License: MIT](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-yellow.svg)](https:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT)\n[![Discord](https:\u002F\u002Fimg.shields.io\u002Fdiscord\u002F794530774463414292?label=chat&logo=discord)](https:\u002F\u002Fdiscord.gg\u002F4JQvC5A4Fe)\n\n\u003C\u002Fdiv>\n\n\n## 🤷‍ What is go-zero?\nEnglish | [简体中文](readme-cn.md)\n\n\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F3263\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Ftrendshift.io\u002Fapi\u002Fbadge\u002Frepositories\u002F3263\" alt=\"zeromicro%2Fgo-zero | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"\u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fwww.producthunt.com\u002Fposts\u002Fgo-zero?utm_source=badge-featured&utm_medium=badge&utm_souce=badge-go&#0045;zero\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fapi.producthunt.com\u002Fwidgets\u002Fembed-image\u002Fv1\u002Ffeatured.svg?post_id=334030&theme=light\" alt=\"go&#0045;zero - A&#0032;web&#0032;&#0038;&#0032;rpc&#0032;framework&#0032;written&#0032;in&#0032;Go&#0046; | Product Hunt\" style=\"width: 250px; height: 54px;\" width=\"250\" height=\"54\" \u002F>\u003C\u002Fa>\n\n\ngo-zero (listed in CNCF Landscape: [https:\u002F\u002Flandscape.cncf.io\u002F?selected=go-zero](https:\u002F\u002Flandscape.cncf.io\u002F?selected=go-zero)) is a web and rpc framework with lots of builtin engineering practices. It’s born to ensure the stability of the busy services with resilience design and has been serving sites with tens of millions of users for years.\n\ngo-zero contains simple API description syntax and code generation tool called `goctl`. You can generate Go, iOS, Android, Kotlin, Dart, TypeScript, JavaScript from .api files with `goctl`.\n\n#### Advantages of go-zero:\n\n* Improves the stability of the services with tens of millions of daily active users\n* Builtin chained timeout control, concurrency control, rate limit, adaptive circuit breaker, adaptive load shedding, even no configuration needed\n* Builtin middlewares also can be integrated into your frameworks\n* Simple API syntax, one command to generate a couple of different languages\n* Auto validate the request parameters from clients\n* Plenty of builtin microservice management and concurrent toolkits\n\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fzeromicro\u002Fzero-doc\u002Fmain\u002Fdoc\u002Fimages\u002Farchitecture-en.png\" alt=\"Architecture\" width=\"1500\" \u002F>\n\n## Backgrounds of go-zero\n\nIn early 2018, we transitioned from a Java+MongoDB monolithic architecture to microservices, choosing:\n\n* **Golang** - High performance, simple syntax, excellent deployment experience, and low resource consumption\n* **Self-designed microservice framework** - Better problem isolation, easier feature extension, and faster issue resolution\n\n## Design considerations on go-zero\n\ngo-zero follows these core design principles:\n\n* **Simplicity** - Keep it simple, first principle\n* **High availability** - Stable under high concurrency\n* **Resilience** - Failure-oriented programming with adaptive protection\n* **Developer friendly** - Encapsulate complexity, one way to do one thing\n* **Easy to extend** - Flexible architecture for growth\n\n## The implementation and features of go-zero\n\ngo-zero integrates engineering best practices:\n\n* **Code generation** - Powerful tools to minimize boilerplate\n* **Simple API** - Clean interfaces, fully compatible with net\u002Fhttp\n* **High performance** - Optimized for speed and efficiency\n* **Resilience** - Built-in circuit breaker, rate limiting, load shedding, timeout control\n* **Service mesh** - Service discovery, load balancing, call tracing\n* **Developer tools** - Auto parameter validation, cache management, metrics and monitoring\n\n![Resilience](https:\u002F\u002Fraw.githubusercontent.com\u002Fzeromicro\u002Fzero-doc\u002Fmain\u002Fdoc\u002Fimages\u002Fresilience-en.png)\n\n## Architecture with go-zero\n\n\u003Cimg width=\"1067\" alt=\"image\" src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F1918356\u002F171880372-5010d846-e8b1-4942-8fe2-e2bbb584f762.png\">\n\n## Installation\n\nRun the following command under your project:\n\n```shell\ngo get -u github.com\u002Fzeromicro\u002Fgo-zero\n```\n\n## AI-Native Development\n\nThe go-zero team provides AI tooling for Claude, GitHub Copilot, Cursor to generate framework-compliant code.\n\n### Three Core Projects\n\n**[ai-context](https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fai-context)** - Workflow guide for AI assistants\n\n**[zero-skills](https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fzero-skills)** - Pattern library with examples\n\n**[mcp-zero](https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fmcp-zero)** - Code generation tools via Model Context Protocol\n\n### Quick Setup\n\n#### GitHub Copilot\n```bash\ngit submodule add https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fai-context.git .github\u002Fai-context\nln -s ai-context\u002F00-instructions.md .github\u002Fcopilot-instructions.md  # macOS\u002FLinux\n# Windows: mklink .github\\copilot-instructions.md .github\\ai-context\\00-instructions.md\ngit submodule update --remote .github\u002Fai-context  # Update\n```\n\n#### Cursor\n```bash\ngit submodule add https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fai-context.git .cursorrules\ngit submodule update --remote .cursorrules  # Update\n```\n\n#### Windsurf\n```bash\ngit submodule add https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fai-context.git .windsurfrules\ngit submodule update --remote .windsurfrules  # Update\n```\n\n#### Claude Desktop\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fmcp-zero.git && cd mcp-zero && go build\n# Configure: ~\u002FLibrary\u002FApplication Support\u002FClaude\u002Fclaude_desktop_config.json\n# Or: claude mcp add --transport stdio mcp-zero --env GOCTL_PATH=\u002Fpath\u002Fto\u002Fgoctl -- \u002Fpath\u002Fto\u002Fmcp-zero\n```\n\n### How It Works\n\nAI assistants use these tools together:\n1. **ai-context** - workflow guidance\n2. **zero-skills** - implementation patterns\n3. **mcp-zero** - real-time code generation\n\n**Example**: Creating a REST API → AI reads **ai-context** for workflow → calls **mcp-zero** to generate code → references **zero-skills** for patterns → produces production-ready code ✅\n\n## Quick Start\n\n1. Full examples:\n\n     [Rapid development of microservice systems](https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fzero-doc\u002Fblob\u002Fmain\u002Fdoc\u002Fshorturl-en.md)\n\n     [Rapid development of microservice systems - multiple RPCs](https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fzero-doc\u002Fblob\u002Fmain\u002Fdocs\u002Fzero\u002Fbookstore-en.md)\n\n2. Install goctl\n\n   ```shell\n   # for Go\n   go install github.com\u002Fzeromicro\u002Fgo-zero\u002Ftools\u002Fgoctl@latest\n\n   # For Mac\n   brew install goctl\n\n   # docker for all platforms\n   docker pull kevinwan\u002Fgoctl\n   # run goctl\n   docker run --rm -it -v `pwd`:\u002Fapp kevinwan\u002Fgoctl --help\n   ```\n\n   Ensure goctl is executable and in your $PATH.\n\n3. Create the API file (greet.api):\n\n   ```go\n   type (\n     Request {\n       Name string `path:\"name,options=[you,me]\"` \u002F\u002F parameters are auto validated\n     }\n\n     Response {\n       Message string `json:\"message\"`\n     }\n   )\n\n   service greet-api {\n     @handler GreetHandler\n     get \u002Fgreet\u002Ffrom\u002F:name(Request) returns (Response)\n   }\n   ```\n\n   Generate .api template:\n\n   ```shell\n   goctl api -o greet.api\n   ```\n\n4. Generate Go server code\n\n   ```shell\n   goctl api go -api greet.api -dir greet\n   ```\n\n   Generated structure:\n\n   ```Plain Text\n   ├── greet\n   │   ├── etc\n   │   │   └── greet-api.yaml        \u002F\u002F configuration file\n   │   ├── greet.go                  \u002F\u002F main file\n   │   └── internal\n   │       ├── config\n   │       │   └── config.go         \u002F\u002F configuration definition\n   │       ├── handler\n   │       │   ├── greethandler.go   \u002F\u002F get\u002Fput\u002Fpost\u002Fdelete routes are defined here\n   │       │   └── routes.go         \u002F\u002F routes list\n   │       ├── logic\n   │       │   └── greetlogic.go     \u002F\u002F request logic can be written here\n   │       ├── svc\n   │       │   └── servicecontext.go \u002F\u002F service context, mysql\u002Fredis can be passed in here\n   │       └── types\n   │           └── types.go          \u002F\u002F request\u002Fresponse defined here\n   └── greet.api                     \u002F\u002F api description file\n   ```\n\n   Run the service:\n\n   ```shell\n   cd greet\n   go mod tidy\n   go run greet.go -f etc\u002Fgreet-api.yaml\n   ```\n\n   Default port: 8888 (configurable in etc\u002Fgreet-api.yaml)\n\n   Test with curl:\n\n   ```shell\n   curl -i http:\u002F\u002Flocalhost:8888\u002Fgreet\u002Ffrom\u002Fyou\n   ```\n\n   Response:\n\n   ```http\n   HTTP\u002F1.1 200 OK\n   Date: Sun, 30 Aug 2020 15:32:35 GMT\n   Content-Length: 0\n   ```\n\n5. Write business logic\n\n    * Pass dependencies (mysql, redis, etc.) via servicecontext.go\n    * Add logic code in the logic package per .api definition\n\n6. Generate client code for multiple languages\n\n   ```shell\n   goctl api java -api greet.api -dir greet\n   goctl api dart -api greet.api -dir greet\n   ...\n   ```\n\n## Benchmark\n\n![benchmark](https:\u002F\u002Fraw.githubusercontent.com\u002Fzeromicro\u002Fzero-doc\u002Fmain\u002Fdoc\u002Fimages\u002Fbenchmark.png)\n\n[Checkout the test code](https:\u002F\u002Fgithub.com\u002Fsmallnest\u002Fgo-web-framework-benchmark)\n\n## Documents\n\n* [Documents](https:\u002F\u002Fgo-zero.dev\u002F)\n* [Rapid development of microservice systems](https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fzero-doc\u002Fblob\u002Fmain\u002Fdoc\u002Fshorturl-en.md)\n* [Rapid development of microservice systems - multiple RPCs](https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fzero-doc\u002Fblob\u002Fmain\u002Fdocs\u002Fzero\u002Fbookstore-en.md)\n* [Examples](https:\u002F\u002Fgithub.com\u002Fzeromicro\u002Fzero-examples)\n\n## Chat group\n\nJoin the chat via https:\u002F\u002Fdiscord.gg\u002F4JQvC5A4Fe\n\n## Cloud Native Landscape\n\n\u003Cp float=\"left\">\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fzeromicro\u002Fzero-doc\u002Fmain\u002Fdoc\u002Fimages\u002Fcncf-logo.svg\" width=\"200\"\u002F>&nbsp;&nbsp;&nbsp;\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fzeromicro\u002Fzero-doc\u002Fmain\u002Fdoc\u002Fimages\u002Fcncf-landscape-logo.svg\" width=\"150\"\u002F>\n\u003C\u002Fp>\n\ngo-zero enlisted in the [CNCF Cloud Native Landscape](https:\u002F\u002Flandscape.cncf.io\u002F?selected=go-zero).\n\n## Give a Star! ⭐\n\nIf you like this project or are using it to learn or start your own solution, give it a star to get updates on new releases. Your support matters!\n","go-zero 是一个专为云原生设计的Go语言微服务框架，内置了大量工程实践以确保服务稳定性。它提供了丰富的核心功能，包括链式超时控制、并发控制、限流、自适应断路器和负载削减等，无需额外配置即可增强系统韧性。此外，go-zero 还配备了一个名为 goctl 的CLI工具，支持从简单的API描述文件生成多种语言的代码（如Go、iOS、Android、Kotlin、Dart、TypeScript 和 JavaScript）。适用于需要构建稳定且可扩展的微服务架构场景，特别适合处理高并发请求和大规模用户访问的应用。",2,"2026-06-11 02:46:43","top_all"]