[
  {
    "path": "README.md",
    "content": "# Golang Open Source Projects\n\n面向中文读者重新整理的 Go 开源项目目录。新版目录不再追求“尽可能全”，而是优先保留仍在维护、社区认知清晰、适合学习和选型的项目，并补充了 AI Agent 相关项目。\n\n当前版本收录 **75** 个项目，分成 **10** 个主题；最近一次维护状态审阅时间为 **2026-03-06**。\n\n- [分类与维护策略](docs/分类与维护策略.md)\n- [移除与迁移记录](docs/移除与迁移记录.md)\n\n## 这次整理做了什么\n\n- 把旧的 17 个松散分类重组为 10 个主题，去掉了难维护的“其它”分类。\n- 清理了已归档、仓库已废弃、长期停更且已有明确替代方案的项目。\n- 去掉了重复收录，同一个项目只保留一个最合适的入口分类。\n- 新增 AI / Agent 分类，覆盖 LLM 应用框架、MCP、推理运行时和向量检索。\n\n## 收录原则\n\n- 优先保留截至 2026-03-06 仍可确认处于维护状态的项目。\n- 已归档、仓库消失或长期停更且已有更好替代的项目默认移除。\n- 目录强调学习与工程选型价值，不再为了覆盖面保留大量边缘项目。\n- 每个项目只收录一次，避免在多个分类中重复出现。\n\n## 分类导航\n\n| 分类 | 关注点 | 项目数 |\n| --- | --- | --- |\n| AI / Agent | LLM 应用框架、MCP、模型运行时与向量能力 | 7 |\n| 云原生与容器 | 容器运行时、编排、镜像仓库和集群平台 | 8 |\n| 服务治理与平台工程 | PaaS、服务治理、CI/CD、消息与异步任务 | 12 |\n| 数据存储与搜索 | 数据库、分布式存储、检索与数据访问生态 | 10 |\n| 可观测性 | 指标、图表、告警与运行状态检查 | 5 |\n| 网络与安全 | 网关、负载均衡、代理、流量调试与网络工具 | 6 |\n| Web 开发与应用 | Web 框架、服务端组件与实时交互能力 | 11 |\n| 数据处理与机器学习 | ML、NLP、爬虫与数据处理 | 6 |\n| 开发者工具与基础库 | 开发效率、测试、终端 UI 和核心基础库 | 8 |\n| 区块链 | 仍在维护、影响力最大的 Go 区块链项目 | 2 |\n\n## AI / Agent\n\nLLM 应用框架、MCP、模型运行时与向量能力\n\n| 项目 | 简介 |\n| --- | --- |\n| [ollama/ollama](https://github.com/ollama/ollama) | 本地运行、分发和管理大模型的 Go 运行时。 |\n| [tmc/langchaingo](https://github.com/tmc/langchaingo) | Go 版 LLM 应用框架，覆盖 prompt、tool calling、agent 和 RAG。 |\n| [cloudwego/eino](https://github.com/cloudwego/eino) | CloudWeGo 出品的 Go AI 应用框架，强调组件化编排和生产落地。 |\n| [mark3labs/mcp-go](https://github.com/mark3labs/mcp-go) | 用 Go 构建 MCP client 和 server 的实用 SDK。 |\n| [mudler/LocalAI](https://github.com/mudler/LocalAI) | OpenAI 兼容的本地推理服务，适合私有化部署。 |\n| [mudler/LocalAGI](https://github.com/mudler/LocalAGI) | 面向本地模型的 Agent 平台，强调工具调用和自治流程。 |\n| [weaviate/weaviate](https://github.com/weaviate/weaviate) | Go 编写的向量数据库，可用于 RAG、检索和 Agent memory。 |\n\n## 云原生与容器\n\n容器运行时、编排、镜像仓库和集群平台\n\n| 项目 | 简介 |\n| --- | --- |\n| [moby/moby](https://github.com/moby/moby) | Docker 引擎的上游项目，也是学习容器运行时实现的核心入口。 |\n| [kubernetes/kubernetes](https://github.com/kubernetes/kubernetes) | 事实标准级的容器编排平台。 |\n| [goharbor/harbor](https://github.com/goharbor/harbor) | 企业级 OCI 镜像仓库，带权限、审计和复制能力。 |\n| [rancher/rancher](https://github.com/rancher/rancher) | 面向多集群场景的 Kubernetes 管理平台。 |\n| [quay/clair](https://github.com/quay/clair) | 容器镜像漏洞分析与扫描服务。 |\n| [moby/swarmkit](https://github.com/moby/swarmkit) | Docker Swarm 的核心编排组件，适合学习调度和集群编排。 |\n| [AliyunContainerService/pouch](https://github.com/AliyunContainerService/pouch) | 阿里开源的容器引擎项目，聚焦更强的隔离与稳定性。 |\n| [hashicorp/nomad](https://github.com/hashicorp/nomad) | 轻量级工作负载编排器，适合对比 Kubernetes 的另一条路线。 |\n\n## 服务治理与平台工程\n\nPaaS、服务治理、CI/CD、消息与异步任务\n\n| 项目 | 简介 |\n| --- | --- |\n| [tsuru/tsuru](https://github.com/tsuru/tsuru) | 成熟的开源 PaaS，适合学习应用平台抽象。 |\n| [goodrain/rainbond](https://github.com/goodrain/rainbond) | 以应用为中心的云原生平台，覆盖交付、运维和微服务治理。 |\n| [harness/harness](https://github.com/harness/harness) | Drone 已并入 Harness 生态后，新的 CI/CD 与开发者平台入口。 |\n| [gravitational/teleport](https://github.com/gravitational/teleport) | 基于零信任模型的远程访问与基础设施入口。 |\n| [istio/istio](https://github.com/istio/istio) | 服务网格代表项目，覆盖流量治理、安全和可观测性。 |\n| [uber/jaeger](https://github.com/uber/jaeger) | 分布式追踪系统，适合与 OpenTelemetry 一起理解链路追踪。 |\n| [go-kit/kit](https://github.com/go-kit/kit) | Go 微服务开发工具箱，强调可观测性和可测试性。 |\n| [goadesign/goa](https://github.com/goadesign/goa) | 设计优先的 Go 服务开发框架。 |\n| [TykTechnologies/tyk](https://github.com/TykTechnologies/tyk) | 成熟的开源 API Gateway。 |\n| [micro/go-micro](https://github.com/micro/go-micro) | Go 微服务框架，适合研究服务抽象与插件化扩展。 |\n| [nsqio/nsq](https://github.com/nsqio/nsq) | 经典的实时分布式消息平台。 |\n| [RichardKnop/machinery](https://github.com/RichardKnop/machinery) | Go 异步任务队列，适合替代 Celery 的思路参考。 |\n\n## 数据存储与搜索\n\n数据库、分布式存储、检索与数据访问生态\n\n| 项目 | 简介 |\n| --- | --- |\n| [cockroachdb/cockroach](https://github.com/cockroachdb/cockroach) | 分布式 SQL 数据库，强调强一致与弹性扩展。 |\n| [vitessio/vitess](https://github.com/vitessio/vitess) | YouTube 开源的 MySQL 水平扩展方案。 |\n| [pingcap/tidb](https://github.com/pingcap/tidb) | 兼容 MySQL 协议的分布式 HTAP 数据库。 |\n| [influxdata/influxdb](https://github.com/influxdata/influxdb) | 经典的时序数据库项目。 |\n| [dgraph-io/dgraph](https://github.com/dgraph-io/dgraph) | 面向关联查询场景的分布式图数据库。 |\n| [ipfs/kubo](https://github.com/ipfs/kubo) | IPFS 的 Go 实现。 |\n| [chrislusf/seaweedfs](https://github.com/chrislusf/seaweedfs) | 高性能分布式文件系统，覆盖对象、文件和块存储。 |\n| [XiaoMi/Gaea](https://github.com/XiaoMi/Gaea) | 小米开源的 MySQL 中间件，聚焦分库分表与代理能力。 |\n| [mediocregopher/radix](https://github.com/mediocregopher/radix) | 设计简洁的 Go Redis 客户端。 |\n| [olivere/elastic](https://github.com/olivere/elastic) | Go 生态里长期被广泛使用的 Elasticsearch client。 |\n\n## 可观测性\n\n指标、图表、告警与运行状态检查\n\n| 项目 | 简介 |\n| --- | --- |\n| [grafana/grafana](https://github.com/grafana/grafana) | 最常见的可观测性可视化平台之一。 |\n| [prometheus/prometheus](https://github.com/prometheus/prometheus) | 事实标准级的监控与时序指标系统。 |\n| [influxdata/kapacitor](https://github.com/influxdata/kapacitor) | InfluxData 的实时计算、告警与监控处理组件。 |\n| [sourcegraph/checkup](https://github.com/sourcegraph/checkup) | 分布式健康检查工具，适合做站点和服务可用性探测。 |\n| [rapidloop/rtop](https://github.com/rapidloop/rtop) | 基于 SSH 的轻量级远程服务器监控工具。 |\n\n## 网络与安全\n\n网关、负载均衡、代理、流量调试与网络工具\n\n| 项目 | 简介 |\n| --- | --- |\n| [traefik/traefik](https://github.com/traefik/traefik) | 云原生场景里广泛使用的反向代理和负载均衡器。 |\n| [google/seesaw](https://github.com/google/seesaw) | Google 开源的 Linux 负载均衡系统。 |\n| [jpillora/go-tcp-proxy](https://github.com/jpillora/go-tcp-proxy) | 实现简单、非常适合学习 TCP 代理原理。 |\n| [probelabs/goreplay](https://github.com/probelabs/goreplay) | 把线上 HTTP 流量复制回测试环境的经典工具。 |\n| [hidu/pproxy](https://github.com/hidu/pproxy) | HTTP 抓包代理和调试工具。 |\n| [getlantern/lantern](https://github.com/getlantern/lantern) | 长期维护的网络代理项目，可参考跨平台网络客户端设计。 |\n\n## Web 开发与应用\n\nWeb 框架、服务端组件与实时交互能力\n\n| 项目 | 简介 |\n| --- | --- |\n| [gin-gonic/gin](https://github.com/gin-gonic/gin) | Go Web 框架里最常见的高性能选择。 |\n| [labstack/echo](https://github.com/labstack/echo) | API 开发体验成熟的高性能 Web 框架。 |\n| [beego/beego](https://github.com/beego/beego) | 老牌但仍在维护的全功能 Go Web 框架。 |\n| [revel/revel](https://github.com/revel/revel) | 偏完整栈思路的 Go Web 框架。 |\n| [kataras/iris](https://github.com/kataras/iris) | 强调性能和完整生态的 Go Web 框架。 |\n| [go-macaron/macaron](https://github.com/go-macaron/macaron) | 模块化风格明显的 Go Web 框架。 |\n| [andeya/faygo](https://github.com/andeya/faygo) | 面向 API 场景的 Go Web 框架，带参数绑定和文档生成。 |\n| [olahol/melody](https://github.com/olahol/melody) | 基于 gorilla/websocket 的轻量级 WebSocket 框架。 |\n| [valyala/fasthttp](https://github.com/valyala/fasthttp) | Go 里非常有代表性的高性能 HTTP 实现。 |\n| [tus/tusd](https://github.com/tus/tusd) | 断点续传文件上传服务端实现。 |\n| [mattermost/mattermost](https://github.com/mattermost/mattermost) | 大型 Go Web 应用的代表项目, 适合看真实业务系统的工程组织方式。 |\n\n## 数据处理与机器学习\n\nML、NLP、爬虫与数据处理\n\n| 项目 | 简介 |\n| --- | --- |\n| [gorgonia/gorgonia](https://github.com/gorgonia/gorgonia) | Go 生态里最有代表性的深度学习与张量计算项目之一。 |\n| [cdipaolo/goml](https://github.com/cdipaolo/goml) | 提供在线学习、聚类和回归等算法实现。 |\n| [sjwhitworth/golearn](https://github.com/sjwhitworth/golearn) | 更偏传统机器学习流程的 Go 库。 |\n| [andeya/pholcus](https://github.com/andeya/pholcus) | Go 编写的分布式爬虫框架。 |\n| [yanyiwu/gojieba](https://github.com/yanyiwu/gojieba) | 结巴中文分词的 Go 版本。 |\n| [chrislusf/gleam](https://github.com/chrislusf/gleam) | Go 风格的数据处理和分布式计算框架。 |\n\n## 开发者工具与基础库\n\n开发效率、测试、终端 UI 和核心基础库\n\n| 项目 | 简介 |\n| --- | --- |\n| [gohugoio/hugo](https://github.com/gohugoio/hugo) | 最有代表性的 Go 静态站点生成器。 |\n| [grpc/grpc-go](https://github.com/grpc/grpc-go) | gRPC 的 Go 官方实现。 |\n| [rakyll/hey](https://github.com/rakyll/hey) | 轻量级压力测试工具。 |\n| [visualfc/liteide](https://github.com/visualfc/liteide) | 跨平台的 Go IDE。 |\n| [mailslurper/mailslurper](https://github.com/mailslurper/mailslurper) | 本地开发非常实用的测试 SMTP 服务器。 |\n| [gizak/termui](https://github.com/gizak/termui) | 在终端里构建可视化面板的 Go UI 库。 |\n| [golang/mobile](https://github.com/golang/mobile) | Go 官方维护的移动端开发工具链。 |\n| [hound-search/hound](https://github.com/hound-search/hound) | 适合自建的代码搜索工具。 |\n\n## 区块链\n\n仍在维护、影响力最大的 Go 区块链项目\n\n| 项目 | 简介 |\n| --- | --- |\n| [ethereum/go-ethereum](https://github.com/ethereum/go-ethereum) | 以太坊客户端 geth 的官方实现。 |\n| [hyperledger/fabric](https://github.com/hyperledger/fabric) | 企业级联盟链平台的代表项目。 |\n\n## 维护说明\n\n目录已经去掉旧版 README 中的重复收录、过时仓库和“其它”大杂烩分类。后续如果继续扩展，建议优先更新 [projects.json](projects.json)，再运行 `go run ./tools/generate_readme.go` 同步生成 README。\n"
  },
  {
    "path": "docs/分类与维护策略.md",
    "content": "# 分类与维护策略\n\n## 这次重构的目标\n\n旧版目录的问题主要有四个:\n\n- 分类粒度不一致, `Web工具`、`Web框架`、`其它` 之间边界模糊。\n- 同一个项目会在多个分类里重复出现, 不利于检索。\n- 目录把“是否仍然值得推荐”和“历史上是否出现过”混在了一起。\n- AI / Agent 相关项目几乎没有覆盖, 已经跟不上当前 Go 生态的关注点。\n\n这次整理把目录收敛成 10 个主题分类, 并把每个项目限制为只出现一次。\n\n## 新分类说明\n\n| 分类 | 关注点 |\n| --- | --- |\n| AI / Agent | LLM 应用框架、MCP、模型运行时、向量检索 |\n| 云原生与容器 | 容器运行时、编排、镜像仓库、集群平台 |\n| 服务治理与平台工程 | PaaS、服务治理、CI/CD、消息与异步任务 |\n| 数据存储与搜索 | 数据库、分布式存储、检索与访问生态 |\n| 可观测性 | 指标、图表、告警、健康检查 |\n| 网络与安全 | 网关、代理、负载均衡、流量调试 |\n| Web 开发与应用 | Web 框架、WebSocket、HTTP 组件 |\n| 数据处理与机器学习 | ML、NLP、爬虫和数据处理 |\n| 开发者工具与基础库 | 核心基础库、测试工具、终端 UI、IDE |\n| 区块链 | 仍在维护且影响力足够大的 Go 区块链项目 |\n\n## 收录标准\n\n维护状态核验时间: `2026-03-06`\n\n- 优先保留能够确认仍在维护的项目。\n- 已归档仓库直接移除。\n- 长期停更但已经出现更合适替代方案的项目默认移除。\n- 目录强调“现在仍值得学、值得选型”, 而不是“历史上出现过”。\n- 不再重复收录同一个项目到多个分类。\n\n## 更新建议\n\n后续维护建议按下面的顺序执行:\n\n1. 先更新 [projects.json](/Users/root1/project/golang-open-source-projects/projects.json)。\n2. 再运行 `go run ./tools/generate_readme.go`。\n3. 如果发生大规模迁移或剔除, 同步更新 [移除与迁移记录](/Users/root1/project/golang-open-source-projects/docs/移除与迁移记录.md)。\n"
  },
  {
    "path": "docs/移除与迁移记录.md",
    "content": "# 移除与迁移记录\n\n这份文档记录的是这次重构里最重要的仓库迁移和剔除动作, 方便后续维护时追溯。\n\n## 迁移到新的仓库入口\n\n| 旧入口 | 新入口 | 说明 |\n| --- | --- | --- |\n| `docker/docker` | `moby/moby` | Docker 引擎上游项目已经以 Moby 作为源码入口 |\n| `vmware/harbor` | `goharbor/harbor` | Harbor 官方仓库已切换 |\n| `coreos/clair` | `quay/clair` | Clair 已迁移到 Quay 组织 |\n| `containous/traefik` | `traefik/traefik` | Traefik 官方仓库名称更新 |\n| `lonelycode/tyk` | `TykTechnologies/tyk` | Tyk 官方仓库迁移 |\n| `bitly/nsq` | `nsqio/nsq` | NSQ 官方仓库迁移 |\n| `youtube/vitess` | `vitessio/vitess` | Vitess 官方组织变更 |\n| `ipfs/go-ipfs` | `ipfs/kubo` | Go IPFS 已改名为 Kubo |\n| `henrylee2cn/pholcus` | `andeya/pholcus` | Pholcus 官方仓库入口更新 |\n| `astaxie/beego` | `beego/beego` | Beego 当前维护入口 |\n| `robfig/revel` | `revel/revel` | Revel 当前维护入口 |\n| `micro/micro` | `micro/go-micro` | 当前微服务框架源码入口 |\n| `drone/drone` | `harness/harness` | Drone 已并入 Harness 生态 |\n| `etsy/hound` | `hound-search/hound` | Hound 官方仓库已迁移 |\n| `mattermost/platform` | `mattermost/mattermost` | Mattermost 当前主仓库入口 |\n\n## 已归档, 直接移除\n\n下面这些项目在审阅时已经明确处于 archived 状态, 因此不再继续收录:\n\n- `coreos/rkt`\n- `shipyard/shipyard`\n- `zettio/weave`\n- `coreos/torus`\n- `sourcegraph/appdash`\n- `uber/tchannel`\n- `bosun-monitor/bosun`\n- `gravitational/satellite`\n- `ooyala/atlantis`\n- `youtube/doorman`\n- `nanopack/yoke`\n- `silenceper/dcmp`\n- `inconshreveable/ngrok`\n- `yahoo/gryffin`\n- `apex/apex`\n- `codeskyblue/gosuv`\n- `vzex/dog-tunnel`\n- `pinggg/pingd`\n- `gernest/utron`\n- `lunny/tango`\n\n## 长期停更或主题重叠, 不再继续推荐\n\n下面这些项目没有进入新版目录, 主要原因是长期停更、主题与更活跃项目高度重叠, 或者当前已经很难作为优先推荐项:\n\n- `huichen/wukong`\n- `codetainerapp/codetainer`\n- `andyxning/shortme`\n- `afex/hystrix-go`\n- `mehrdadrad/mylg`\n- `cyfdecyf/cow`\n- `huichen/mlf`\n- `Qihoo360/poseidon`\n- `idcos/osinstall`\n- `fagongzi/gateway`\n- `andot/hprose`\n- `Terry-Mao/bfs`\n- `TalkingData/owl`\n- `cloudinsight/cloudinsight-agent`\n- `rach/pome`\n- `open-falcon/of-release`\n- `mesos/cloudfoundry-mesos`\n- `laincloud/lain`\n- `weibocom/opendcp`\n- `hoisie/web`\n- `codegangsta/martini`\n- `goshawkdb/server`\n- `slicebit/qb`\n- `chasex/redis-go-cluster`\n- `siddontang/ledisdb`\n- `degdb/degdb`\n- `blackbeans/kiteq`\n\n## 说明\n\n- 这次不是简单按 star 排序做增删, 而是按“现在是否还值得推荐”重新做目录。\n- 少量仍然可用但维护明显放缓的项目没有全部列在这里; 它们在新版目录里已经自然退出主列表。\n"
  },
  {
    "path": "projects.json",
    "content": "{\n  \"title\": \"Golang Open Source Projects\",\n  \"description\": \"面向中文读者重新整理的 Go 开源项目目录。新版目录不再追求“尽可能全”，而是优先保留仍在维护、社区认知清晰、适合学习和选型的项目，并补充了 AI Agent 相关项目。\",\n  \"updated_at\": \"2026-03-06\",\n  \"highlights\": [\n    \"把旧的 17 个松散分类重组为 10 个主题，去掉了难维护的“其它”分类。\",\n    \"清理了已归档、仓库已废弃、长期停更且已有明确替代方案的项目。\",\n    \"去掉了重复收录，同一个项目只保留一个最合适的入口分类。\",\n    \"新增 AI / Agent 分类，覆盖 LLM 应用框架、MCP、推理运行时和向量检索。\"\n  ],\n  \"selection_rules\": [\n    \"优先保留截至 2026-03-06 仍可确认处于维护状态的项目。\",\n    \"已归档、仓库消失或长期停更且已有更好替代的项目默认移除。\",\n    \"目录强调学习与工程选型价值，不再为了覆盖面保留大量边缘项目。\",\n    \"每个项目只收录一次，避免在多个分类中重复出现。\"\n  ],\n  \"categories\": [\n    {\n      \"slug\": \"ai-agent\",\n      \"name\": \"AI / Agent\",\n      \"summary\": \"LLM 应用框架、MCP、模型运行时与向量能力\",\n      \"projects\": [\n        {\n          \"name\": \"Ollama\",\n          \"repo\": \"ollama/ollama\",\n          \"desc\": \"本地运行、分发和管理大模型的 Go 运行时。\"\n        },\n        {\n          \"name\": \"LangChainGo\",\n          \"repo\": \"tmc/langchaingo\",\n          \"desc\": \"Go 版 LLM 应用框架，覆盖 prompt、tool calling、agent 和 RAG。\"\n        },\n        {\n          \"name\": \"Eino\",\n          \"repo\": \"cloudwego/eino\",\n          \"desc\": \"CloudWeGo 出品的 Go AI 应用框架，强调组件化编排和生产落地。\"\n        },\n        {\n          \"name\": \"MCP Go\",\n          \"repo\": \"mark3labs/mcp-go\",\n          \"desc\": \"用 Go 构建 MCP client 和 server 的实用 SDK。\"\n        },\n        {\n          \"name\": \"LocalAI\",\n          \"repo\": \"mudler/LocalAI\",\n          \"desc\": \"OpenAI 兼容的本地推理服务，适合私有化部署。\"\n        },\n        {\n          \"name\": \"LocalAGI\",\n          \"repo\": \"mudler/LocalAGI\",\n          \"desc\": \"面向本地模型的 Agent 平台，强调工具调用和自治流程。\"\n        },\n        {\n          \"name\": \"Weaviate\",\n          \"repo\": \"weaviate/weaviate\",\n          \"desc\": \"Go 编写的向量数据库，可用于 RAG、检索和 Agent memory。\"\n        }\n      ]\n    },\n    {\n      \"slug\": \"cloud-native\",\n      \"name\": \"云原生与容器\",\n      \"summary\": \"容器运行时、编排、镜像仓库和集群平台\",\n      \"projects\": [\n        {\n          \"name\": \"Moby\",\n          \"repo\": \"moby/moby\",\n          \"desc\": \"Docker 引擎的上游项目，也是学习容器运行时实现的核心入口。\"\n        },\n        {\n          \"name\": \"Kubernetes\",\n          \"repo\": \"kubernetes/kubernetes\",\n          \"desc\": \"事实标准级的容器编排平台。\"\n        },\n        {\n          \"name\": \"Harbor\",\n          \"repo\": \"goharbor/harbor\",\n          \"desc\": \"企业级 OCI 镜像仓库，带权限、审计和复制能力。\"\n        },\n        {\n          \"name\": \"Rancher\",\n          \"repo\": \"rancher/rancher\",\n          \"desc\": \"面向多集群场景的 Kubernetes 管理平台。\"\n        },\n        {\n          \"name\": \"Clair\",\n          \"repo\": \"quay/clair\",\n          \"desc\": \"容器镜像漏洞分析与扫描服务。\"\n        },\n        {\n          \"name\": \"SwarmKit\",\n          \"repo\": \"moby/swarmkit\",\n          \"desc\": \"Docker Swarm 的核心编排组件，适合学习调度和集群编排。\"\n        },\n        {\n          \"name\": \"Pouch\",\n          \"repo\": \"AliyunContainerService/pouch\",\n          \"desc\": \"阿里开源的容器引擎项目，聚焦更强的隔离与稳定性。\"\n        },\n        {\n          \"name\": \"Nomad\",\n          \"repo\": \"hashicorp/nomad\",\n          \"desc\": \"轻量级工作负载编排器，适合对比 Kubernetes 的另一条路线。\"\n        }\n      ]\n    },\n    {\n      \"slug\": \"platform-engineering\",\n      \"name\": \"服务治理与平台工程\",\n      \"summary\": \"PaaS、服务治理、CI/CD、消息与异步任务\",\n      \"projects\": [\n        {\n          \"name\": \"Tsuru\",\n          \"repo\": \"tsuru/tsuru\",\n          \"desc\": \"成熟的开源 PaaS，适合学习应用平台抽象。\"\n        },\n        {\n          \"name\": \"Rainbond\",\n          \"repo\": \"goodrain/rainbond\",\n          \"desc\": \"以应用为中心的云原生平台，覆盖交付、运维和微服务治理。\"\n        },\n        {\n          \"name\": \"Harness\",\n          \"repo\": \"harness/harness\",\n          \"desc\": \"Drone 已并入 Harness 生态后，新的 CI/CD 与开发者平台入口。\"\n        },\n        {\n          \"name\": \"Teleport\",\n          \"repo\": \"gravitational/teleport\",\n          \"desc\": \"基于零信任模型的远程访问与基础设施入口。\"\n        },\n        {\n          \"name\": \"Istio\",\n          \"repo\": \"istio/istio\",\n          \"desc\": \"服务网格代表项目，覆盖流量治理、安全和可观测性。\"\n        },\n        {\n          \"name\": \"Jaeger\",\n          \"repo\": \"uber/jaeger\",\n          \"desc\": \"分布式追踪系统，适合与 OpenTelemetry 一起理解链路追踪。\"\n        },\n        {\n          \"name\": \"Go kit\",\n          \"repo\": \"go-kit/kit\",\n          \"desc\": \"Go 微服务开发工具箱，强调可观测性和可测试性。\"\n        },\n        {\n          \"name\": \"Goa\",\n          \"repo\": \"goadesign/goa\",\n          \"desc\": \"设计优先的 Go 服务开发框架。\"\n        },\n        {\n          \"name\": \"Tyk\",\n          \"repo\": \"TykTechnologies/tyk\",\n          \"desc\": \"成熟的开源 API Gateway。\"\n        },\n        {\n          \"name\": \"Go Micro\",\n          \"repo\": \"micro/go-micro\",\n          \"desc\": \"Go 微服务框架，适合研究服务抽象与插件化扩展。\"\n        },\n        {\n          \"name\": \"NSQ\",\n          \"repo\": \"nsqio/nsq\",\n          \"desc\": \"经典的实时分布式消息平台。\"\n        },\n        {\n          \"name\": \"Machinery\",\n          \"repo\": \"RichardKnop/machinery\",\n          \"desc\": \"Go 异步任务队列，适合替代 Celery 的思路参考。\"\n        }\n      ]\n    },\n    {\n      \"slug\": \"data-storage\",\n      \"name\": \"数据存储与搜索\",\n      \"summary\": \"数据库、分布式存储、检索与数据访问生态\",\n      \"projects\": [\n        {\n          \"name\": \"CockroachDB\",\n          \"repo\": \"cockroachdb/cockroach\",\n          \"desc\": \"分布式 SQL 数据库，强调强一致与弹性扩展。\"\n        },\n        {\n          \"name\": \"Vitess\",\n          \"repo\": \"vitessio/vitess\",\n          \"desc\": \"YouTube 开源的 MySQL 水平扩展方案。\"\n        },\n        {\n          \"name\": \"TiDB\",\n          \"repo\": \"pingcap/tidb\",\n          \"desc\": \"兼容 MySQL 协议的分布式 HTAP 数据库。\"\n        },\n        {\n          \"name\": \"InfluxDB\",\n          \"repo\": \"influxdata/influxdb\",\n          \"desc\": \"经典的时序数据库项目。\"\n        },\n        {\n          \"name\": \"Dgraph\",\n          \"repo\": \"dgraph-io/dgraph\",\n          \"desc\": \"面向关联查询场景的分布式图数据库。\"\n        },\n        {\n          \"name\": \"Kubo\",\n          \"repo\": \"ipfs/kubo\",\n          \"desc\": \"IPFS 的 Go 实现。\"\n        },\n        {\n          \"name\": \"SeaweedFS\",\n          \"repo\": \"chrislusf/seaweedfs\",\n          \"desc\": \"高性能分布式文件系统，覆盖对象、文件和块存储。\"\n        },\n        {\n          \"name\": \"Gaea\",\n          \"repo\": \"XiaoMi/Gaea\",\n          \"desc\": \"小米开源的 MySQL 中间件，聚焦分库分表与代理能力。\"\n        },\n        {\n          \"name\": \"Radix\",\n          \"repo\": \"mediocregopher/radix\",\n          \"desc\": \"设计简洁的 Go Redis 客户端。\"\n        },\n        {\n          \"name\": \"Olivere Elastic\",\n          \"repo\": \"olivere/elastic\",\n          \"desc\": \"Go 生态里长期被广泛使用的 Elasticsearch client。\"\n        }\n      ]\n    },\n    {\n      \"slug\": \"observability\",\n      \"name\": \"可观测性\",\n      \"summary\": \"指标、图表、告警与运行状态检查\",\n      \"projects\": [\n        {\n          \"name\": \"Grafana\",\n          \"repo\": \"grafana/grafana\",\n          \"desc\": \"最常见的可观测性可视化平台之一。\"\n        },\n        {\n          \"name\": \"Prometheus\",\n          \"repo\": \"prometheus/prometheus\",\n          \"desc\": \"事实标准级的监控与时序指标系统。\"\n        },\n        {\n          \"name\": \"Kapacitor\",\n          \"repo\": \"influxdata/kapacitor\",\n          \"desc\": \"InfluxData 的实时计算、告警与监控处理组件。\"\n        },\n        {\n          \"name\": \"Checkup\",\n          \"repo\": \"sourcegraph/checkup\",\n          \"desc\": \"分布式健康检查工具，适合做站点和服务可用性探测。\"\n        },\n        {\n          \"name\": \"rtop\",\n          \"repo\": \"rapidloop/rtop\",\n          \"desc\": \"基于 SSH 的轻量级远程服务器监控工具。\"\n        }\n      ]\n    },\n    {\n      \"slug\": \"network-security\",\n      \"name\": \"网络与安全\",\n      \"summary\": \"网关、负载均衡、代理、流量调试与网络工具\",\n      \"projects\": [\n        {\n          \"name\": \"Traefik\",\n          \"repo\": \"traefik/traefik\",\n          \"desc\": \"云原生场景里广泛使用的反向代理和负载均衡器。\"\n        },\n        {\n          \"name\": \"Seesaw\",\n          \"repo\": \"google/seesaw\",\n          \"desc\": \"Google 开源的 Linux 负载均衡系统。\"\n        },\n        {\n          \"name\": \"go-tcp-proxy\",\n          \"repo\": \"jpillora/go-tcp-proxy\",\n          \"desc\": \"实现简单、非常适合学习 TCP 代理原理。\"\n        },\n        {\n          \"name\": \"GoReplay\",\n          \"repo\": \"probelabs/goreplay\",\n          \"desc\": \"把线上 HTTP 流量复制回测试环境的经典工具。\"\n        },\n        {\n          \"name\": \"pproxy\",\n          \"repo\": \"hidu/pproxy\",\n          \"desc\": \"HTTP 抓包代理和调试工具。\"\n        },\n        {\n          \"name\": \"Lantern\",\n          \"repo\": \"getlantern/lantern\",\n          \"desc\": \"长期维护的网络代理项目，可参考跨平台网络客户端设计。\"\n        }\n      ]\n    },\n    {\n      \"slug\": \"web-development\",\n      \"name\": \"Web 开发与应用\",\n      \"summary\": \"Web 框架、服务端组件与实时交互能力\",\n      \"projects\": [\n        {\n          \"name\": \"Gin\",\n          \"repo\": \"gin-gonic/gin\",\n          \"desc\": \"Go Web 框架里最常见的高性能选择。\"\n        },\n        {\n          \"name\": \"Echo\",\n          \"repo\": \"labstack/echo\",\n          \"desc\": \"API 开发体验成熟的高性能 Web 框架。\"\n        },\n        {\n          \"name\": \"Beego\",\n          \"repo\": \"beego/beego\",\n          \"desc\": \"老牌但仍在维护的全功能 Go Web 框架。\"\n        },\n        {\n          \"name\": \"Revel\",\n          \"repo\": \"revel/revel\",\n          \"desc\": \"偏完整栈思路的 Go Web 框架。\"\n        },\n        {\n          \"name\": \"Iris\",\n          \"repo\": \"kataras/iris\",\n          \"desc\": \"强调性能和完整生态的 Go Web 框架。\"\n        },\n        {\n          \"name\": \"Macaron\",\n          \"repo\": \"go-macaron/macaron\",\n          \"desc\": \"模块化风格明显的 Go Web 框架。\"\n        },\n        {\n          \"name\": \"Faygo\",\n          \"repo\": \"andeya/faygo\",\n          \"desc\": \"面向 API 场景的 Go Web 框架，带参数绑定和文档生成。\"\n        },\n        {\n          \"name\": \"Melody\",\n          \"repo\": \"olahol/melody\",\n          \"desc\": \"基于 gorilla/websocket 的轻量级 WebSocket 框架。\"\n        },\n        {\n          \"name\": \"fasthttp\",\n          \"repo\": \"valyala/fasthttp\",\n          \"desc\": \"Go 里非常有代表性的高性能 HTTP 实现。\"\n        },\n        {\n          \"name\": \"tusd\",\n          \"repo\": \"tus/tusd\",\n          \"desc\": \"断点续传文件上传服务端实现。\"\n        },\n        {\n          \"name\": \"Mattermost\",\n          \"repo\": \"mattermost/mattermost\",\n          \"desc\": \"大型 Go Web 应用的代表项目, 适合看真实业务系统的工程组织方式。\"\n        }\n      ]\n    },\n    {\n      \"slug\": \"data-ml\",\n      \"name\": \"数据处理与机器学习\",\n      \"summary\": \"ML、NLP、爬虫与数据处理\",\n      \"projects\": [\n        {\n          \"name\": \"Gorgonia\",\n          \"repo\": \"gorgonia/gorgonia\",\n          \"desc\": \"Go 生态里最有代表性的深度学习与张量计算项目之一。\"\n        },\n        {\n          \"name\": \"GoML\",\n          \"repo\": \"cdipaolo/goml\",\n          \"desc\": \"提供在线学习、聚类和回归等算法实现。\"\n        },\n        {\n          \"name\": \"GoLearn\",\n          \"repo\": \"sjwhitworth/golearn\",\n          \"desc\": \"更偏传统机器学习流程的 Go 库。\"\n        },\n        {\n          \"name\": \"Pholcus\",\n          \"repo\": \"andeya/pholcus\",\n          \"desc\": \"Go 编写的分布式爬虫框架。\"\n        },\n        {\n          \"name\": \"gojieba\",\n          \"repo\": \"yanyiwu/gojieba\",\n          \"desc\": \"结巴中文分词的 Go 版本。\"\n        },\n        {\n          \"name\": \"Gleam\",\n          \"repo\": \"chrislusf/gleam\",\n          \"desc\": \"Go 风格的数据处理和分布式计算框架。\"\n        }\n      ]\n    },\n    {\n      \"slug\": \"developer-tools\",\n      \"name\": \"开发者工具与基础库\",\n      \"summary\": \"开发效率、测试、终端 UI 和核心基础库\",\n      \"projects\": [\n        {\n          \"name\": \"Hugo\",\n          \"repo\": \"gohugoio/hugo\",\n          \"desc\": \"最有代表性的 Go 静态站点生成器。\"\n        },\n        {\n          \"name\": \"gRPC Go\",\n          \"repo\": \"grpc/grpc-go\",\n          \"desc\": \"gRPC 的 Go 官方实现。\"\n        },\n        {\n          \"name\": \"hey\",\n          \"repo\": \"rakyll/hey\",\n          \"desc\": \"轻量级压力测试工具。\"\n        },\n        {\n          \"name\": \"LiteIDE\",\n          \"repo\": \"visualfc/liteide\",\n          \"desc\": \"跨平台的 Go IDE。\"\n        },\n        {\n          \"name\": \"MailSlurper\",\n          \"repo\": \"mailslurper/mailslurper\",\n          \"desc\": \"本地开发非常实用的测试 SMTP 服务器。\"\n        },\n        {\n          \"name\": \"termui\",\n          \"repo\": \"gizak/termui\",\n          \"desc\": \"在终端里构建可视化面板的 Go UI 库。\"\n        },\n        {\n          \"name\": \"Go mobile\",\n          \"repo\": \"golang/mobile\",\n          \"desc\": \"Go 官方维护的移动端开发工具链。\"\n        },\n        {\n          \"name\": \"Hound\",\n          \"repo\": \"hound-search/hound\",\n          \"desc\": \"适合自建的代码搜索工具。\"\n        }\n      ]\n    },\n    {\n      \"slug\": \"blockchain\",\n      \"name\": \"区块链\",\n      \"summary\": \"仍在维护、影响力最大的 Go 区块链项目\",\n      \"projects\": [\n        {\n          \"name\": \"go-ethereum\",\n          \"repo\": \"ethereum/go-ethereum\",\n          \"desc\": \"以太坊客户端 geth 的官方实现。\"\n        },\n        {\n          \"name\": \"Hyperledger Fabric\",\n          \"repo\": \"hyperledger/fabric\",\n          \"desc\": \"企业级联盟链平台的代表项目。\"\n        }\n      ]\n    }\n  ]\n}\n"
  },
  {
    "path": "tools/generate_readme.go",
    "content": "package main\n\nimport (\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"os\"\n\t\"strings\"\n)\n\ntype catalog struct {\n\tTitle          string     `json:\"title\"`\n\tDescription    string     `json:\"description\"`\n\tUpdatedAt      string     `json:\"updated_at\"`\n\tHighlights     []string   `json:\"highlights\"`\n\tSelectionRules []string   `json:\"selection_rules\"`\n\tCategories     []category `json:\"categories\"`\n}\n\ntype category struct {\n\tSlug     string    `json:\"slug\"`\n\tName     string    `json:\"name\"`\n\tSummary  string    `json:\"summary\"`\n\tProjects []project `json:\"projects\"`\n}\n\ntype project struct {\n\tName string `json:\"name\"`\n\tRepo string `json:\"repo\"`\n\tDesc string `json:\"desc\"`\n}\n\nfunc main() {\n\traw, err := os.ReadFile(\"projects.json\")\n\tif err != nil {\n\t\tfail(err)\n\t}\n\n\tvar data catalog\n\tif err := json.Unmarshal(raw, &data); err != nil {\n\t\tfail(err)\n\t}\n\n\tvar total int\n\tfor _, category := range data.Categories {\n\t\ttotal += len(category.Projects)\n\t}\n\n\tvar b strings.Builder\n\tb.WriteString(\"# \")\n\tb.WriteString(data.Title)\n\tb.WriteString(\"\\n\\n\")\n\tb.WriteString(data.Description)\n\tb.WriteString(\"\\n\\n\")\n\tb.WriteString(fmt.Sprintf(\"当前版本收录 **%d** 个项目，分成 **%d** 个主题；最近一次维护状态审阅时间为 **%s**。\\n\\n\", total, len(data.Categories), data.UpdatedAt))\n\tb.WriteString(\"- [分类与维护策略](docs/分类与维护策略.md)\\n\")\n\tb.WriteString(\"- [移除与迁移记录](docs/移除与迁移记录.md)\\n\\n\")\n\n\tb.WriteString(\"## 这次整理做了什么\\n\\n\")\n\tfor _, item := range data.Highlights {\n\t\tb.WriteString(\"- \")\n\t\tb.WriteString(item)\n\t\tb.WriteString(\"\\n\")\n\t}\n\n\tb.WriteString(\"\\n## 收录原则\\n\\n\")\n\tfor _, rule := range data.SelectionRules {\n\t\tb.WriteString(\"- \")\n\t\tb.WriteString(rule)\n\t\tb.WriteString(\"\\n\")\n\t}\n\n\tb.WriteString(\"\\n## 分类导航\\n\\n\")\n\tb.WriteString(\"| 分类 | 关注点 | 项目数 |\\n\")\n\tb.WriteString(\"| --- | --- | --- |\\n\")\n\tfor _, category := range data.Categories {\n\t\tb.WriteString(\"| \")\n\t\tb.WriteString(category.Name)\n\t\tb.WriteString(\" | \")\n\t\tb.WriteString(category.Summary)\n\t\tb.WriteString(\" | \")\n\t\tb.WriteString(fmt.Sprintf(\"%d\", len(category.Projects)))\n\t\tb.WriteString(\" |\\n\")\n\t}\n\n\tfor _, category := range data.Categories {\n\t\tb.WriteString(\"\\n## \")\n\t\tb.WriteString(category.Name)\n\t\tb.WriteString(\"\\n\\n\")\n\t\tb.WriteString(category.Summary)\n\t\tb.WriteString(\"\\n\\n\")\n\t\tb.WriteString(\"| 项目 | 简介 |\\n\")\n\t\tb.WriteString(\"| --- | --- |\\n\")\n\t\tfor _, project := range category.Projects {\n\t\t\tb.WriteString(\"| [\")\n\t\t\tb.WriteString(project.Repo)\n\t\t\tb.WriteString(\"](https://github.com/\")\n\t\t\tb.WriteString(project.Repo)\n\t\t\tb.WriteString(\") | \")\n\t\t\tb.WriteString(project.Desc)\n\t\t\tb.WriteString(\" |\\n\")\n\t\t}\n\t}\n\n\tb.WriteString(\"\\n## 维护说明\\n\\n\")\n\tb.WriteString(\"目录已经去掉旧版 README 中的重复收录、过时仓库和“其它”大杂烩分类。后续如果继续扩展，建议优先更新 [projects.json](projects.json)，再运行 `go run ./tools/generate_readme.go` 同步生成 README。\\n\")\n\n\tif err := os.WriteFile(\"README.md\", []byte(b.String()), 0o644); err != nil {\n\t\tfail(err)\n\t}\n}\n\nfunc fail(err error) {\n\tfmt.Fprintln(os.Stderr, err)\n\tos.Exit(1)\n}\n"
  }
]