SmoUI

CLI

不自造安装器,复用 shadcn CLI

SmoUI 的 CLI 路线是薄封装。当前阶段直接使用 shadcn CLI 安装 SmoUI registry 资产;后续如果提供 npx smoui,也只做资产名映射、中文提示和产品边界校验,底层仍调用 shadcn。

shadcn CLI
npx shadcn@latest

负责 init、add、view、build 和 registry 消费,不重新实现。

Smo registry
registry.json -> public/r

只登记已经确认的 SmoUI 组件、规则文件和后续业务组合。

目标业务项目
components/ui + components/smo

通过 CLI 获得源码文件,进入项目后可以审查、修改和版本化。

smoui 薄封装
后续可选

只做命令别名、资产名映射和中文提示,底层仍调用 shadcn CLI。

现在怎么用

1

初始化目标项目

业务项目先按 shadcn/ui 的方式建立 components.json、Tailwind 和路径别名。

命令
npx shadcn@latest init
2

直接安装 SmoUI 资产

开发期不需要我们自造安装器,直接让 shadcn CLI 消费本地 registry JSON。

命令
npx shadcn@latest add https://smoui.xiaomolian.com/r/smo-module-card.json
3

生成 registry 产物

每次新增确认资产后,在 SmoUI 仓库重新生成 public/r,供 CLI 消费。

命令
npx shadcn@latest build --output ./public/r

配置 @smo 别名

如果目标项目希望使用 @smo/name 这种短命令,可以在目标项目的 components.json 加 registry 映射。部署上线后,把 localhost 换成正式域名。

components.json
{
  "registries": {
    "@smo": "https://smoui.xiaomolian.com/r/{name}.json"
  }
}
别名安装
npx shadcn@latest add @smo/smo-module-card
部署后的直接安装
npx shadcn@latest add https://smoui.xiaomolian.com/r/smo-module-card.json

当前可安装资产

registry:componenthttps://smoui.xiaomolian.com/r/smo-module-card.json

Smo Module Card

Business module card for smolink-online activation, management and risk states.

安装命令
npx shadcn@latest add https://smoui.xiaomolian.com/r/smo-module-card.json
registry:filehttps://smoui.xiaomolian.com/r/smo-ui-generation-rules.json

SmoUI Generation Rules

Product boundary and generation workflow documentation for SmoUI.

安装命令
npx shadcn@latest add https://smoui.xiaomolian.com/r/smo-ui-generation-rules.json

npx smoui 应该长什么样

可以做,但不应该从零实现 registry 下载、文件合并和依赖安装。smoui 只需要把中文资产名、产品边界和默认域名翻译成 shadcn CLI 可执行命令。

薄封装草案
npx smoui add module-card

# 内部等价于
npx shadcn@latest add https://smoui.xiaomolian.com/r/smo-module-card.json