📌 项目地址:inkonchain/ink-kit | ⭐ 36,506 颗星 | 🔧 TypeScript | 📜 MIT
你先看README第一段
Ink Kit 的 README 开头用了加粗:
Looking for React UI components? … For wallet connectivity specifically, check out RainbowKit or ConnectKit.
这不是谦虚,是维护者直接告诉你“别用我”。项目在2025年10月归档,最后一个版本是0.9.1-beta.19,安装命令:
npm install @inkonchain/ink-kit@0.9.1-beta.19
代码保留在NPM上,MIT许可,Storybook文档还挂在ink-kit.inkonchain.com。但不会再更新,没有安全补丁,没有迁移指南。
一个36k star的TypeScript开源库,主动劝退用户,这个现象值得拆开看:它当初想解决什么问题?为什么认输?如果你还在用它该怎么办?
它曾经是什么,为什么撑不住
Ink Kit 是一个React组件库,提供通用UI(按钮、布局、主题)和一个基于wagmi的钱包连接组件。目标是一个import搞定页面和链交互:import { Button, WalletConnectButton } from '@inkonchain/ink-kit'。
过去两年,两个方向都跑出了更专业的工具。
通用UI侧:shadcn/ui把组件源码直接拷进项目,零运行时依赖,你完全控制代码。Radix无障碍做得最扎实。Chakra UI和Mantine社区活跃、版本迭代快。都不绑定区块链,React升级时修复速度比兼顾两头的库快很多。
钱包连接侧:RainbowKit和ConnectKit只做钱包连接,多链支持强,定制灵活,同样基于wagmi,但迭代速度远超Ink Kit。它们更容易跟上wagmi的API变更。
Ink Kit要同时跟上React升级、UI框架变化、wagmi API变更。当每侧都有更好的选择时,兼顾两边的库就成了负担。用户减少,Issues积压,修复优先级越来越低。最后团队直接说:去用更专业的库。
我维护过一个类似的库(集成图表和数据处理),半年后ECharts更新比我们快,数据SDK每季度改一次接口。最后我也在README里列出替代品。这不是失败,是认清边界:你不可能在所有方向上跑赢专业工具。
如果你还在用Ink Kit,有两条路
继续用:锁定0.9.1-beta.19。但风险自担。React升级或wagmi变更直接破功,没有补丁。安全漏洞只能自己修。你的项目会逐渐变成技术债。
迁移:
- 钱包连接换成RainbowKit或ConnectKit。它们的API跟wagmi类似,迁移成本低。
- UI组件换成shadcn/ui、Radix、Mantine中的任何一个。对照Ink Kit的Storybook找到自己页面里用了哪些组件,手动替换。
- 建议顺序:先换钱包连接(通常只涉及几个文件),再换UI组件。
我的建议是别拖。当依赖库的README开始推荐替代品,说明作者清楚它已进入衰退期。越早动手,迁移成本越低。我拖过一个类似项目三个月,最后换库时发现依赖链已经长到需要重写半个应用。
两个判断标准,帮你提前看透一个开源库
第一,看README里“Alternatives”在第几屏。 Ink Kit直接放在最开头。这是一种信号:作者做过市场调研,列出来的大概率是目前行业认可的最佳选择。我的习惯:打开仓库,直接滚动到README中部,找到“Alternatives”跳过去先看。这比看star数有效得多。
第二,业务代码中不要直接依赖“垂直集成”库。 早期写import { Button, WalletConnectButton } from '@inkonchain/ink-kit',现在就得改每个引用文件。自己抽象一层:把所有UI组件包在一个components/ui/index.ts里统一导出。换库时只改这一个文件。这个习惯成本极低——初期多写一行export,换库时省掉全局搜索替换。这个原则适用于任何可能过时的依赖,不只是UI库。
36k星不等于永远维护
星数高只说明这个项目在某个时间点解决了某个问题。Ink Kit代码质量不差,只是它解决的问题被更专业的工具分别接过去了。你选的任何库,几年后都可能被更好的方案替代。解法不是“不选”:选的时候知道它为什么被推荐,用的时候保持解耦。
读完Ink Kit的README,你在选shadcn/ui和RainbowKit的时候心里就有数了。