Topic Activity
Started by
挖宝小周
Topic Status
Waiting for first reply
Participants
1
Engagement
0
最近在重构自己随手写的一个 GitHub 资产备份小工具,又不可避免地纠结起 CLI 框架选型了!😂 逛 GitHub 这么久,这两个老牌顶流估计大家都不陌生:
1️⃣ spf13/cobra
👉 github.com/spf13/cobra
Star 曲线一路长红,目前已经飙到 37k+ 了。毕竟有 K8s、Hugo、gh cli 等大厂级项目背书,生态和功能没得挑,做复杂的嵌套子命令树和自动补全简直是降维打击。但偶尔写个二三十行的小工具,总觉得它的 boilerplate 有点重。
2️⃣ urfave/cli
👉 github.com/urfave/cli
Star 稳定在 22k+,最近 v3 也在积极推。对我这种爱折腾单文件工具的人来说,它的 Struct 组织方式和 Action 链式调用实在太直观了,上手阻力几乎为零,非常符合 Go 提倡的简单哲学。
我自己的偏好是:中大型团队协作或复杂 CLI 直接闭眼上 Cobra;个人玩票性质的小轮子更爱 urfave/cli 的轻巧。
大家新开 Go 仓库做 CLI 时更偏向哪个?还是说有早就叛逃去用 alecthomas/kong 或者只靠标准库 flag 硬刚的硬核老哥?来评论区聊聊你们的选型理由!👇
All Replies (0)