packages/web 命名空间下 Web 平台包的定位、分层与文档入口,覆盖设计系统、主题、布局、运行时与构建
packages/web/ 是 Web 平台一整棵能力树,从组件库、主题算法、布局壳,一直到运行时启动、通知中心和 Vite 配置预设,Web 端专属的能力全部收在这里。
它的设计取舍是:与其抽一个"通用 UI"让多端共享,不如让每个平台目录各自完整。antd / Tailwind / Vite / IndexedDB 这些强平台耦合就留在 web/ 里,跨端共享的只有 token 和类型。命名与目录的对应规则见 平台优先与命名。
三个 ui/* 包的组件文档、实时 Demo 与 Props 表在独立的 Web UI 站点,主站只保留一页指路。
算法层 → React 层 → 应用层的三层主题架构,以及切换暗色时的完整数据流。
Tailwind 插件:CSS 变量主题系统、12 套内置配色、语义化 token 与可配置圆角。Web / Native 双平台共用,因此住在
@core/ 而非 web/。
Ant Design 主题算法适配器,用 OKLCH 感知均匀色彩空间替换默认调色板生成器。
应用级主题管理:Jotai 状态、切换组件、5 套预设、副作用收口与 antd 集成。
插槽式 AdminLayout 骨架与多风格 PageTab,只负责视觉与结构,不含业务状态。
完整后台应用壳:菜单生成、权限、页签、布局状态、主题抽屉与业务插槽。
纯 CSS 包:reset、全局基线与滚动条、NProgress 样式,按子路径引入。
启动期插件助手:Dayjs、Iconify 离线 provider、NProgress 与应用版本更新检测。
管理端多语言运行时:i18next 初始化、语言状态、语言切换组件与内置翻译资源。
站内通知中心:不依赖 React 的通知仓库 + Provider + 铃铛按钮 + 通知面板。
Admin Shell 内置的开发调试模块,聚合 TanStack Query / Router 与 Jotai 三套 DevTools。
@skyroc/web-admin-layouts 是这棵树组合度最高的包,把主题、组件库、i18n 和布局材料拼装成后台壳;其余包要么是它的依赖,要么与它平行、可独立引入。
@skyroc/color
├── @skyroc/tailwind-plugin ──────── peer → @skyroc/web-ui
└── @skyroc/adapter-antd-theme
└── @skyroc/web-admin-theme
└── @skyroc/web-admin-layouts
├── @skyroc/materials → @skyroc/web-ui
├── @skyroc/web-admin-i18n
└── @skyroc/web-ui-antd → @skyroc/web-ui-compose
@skyroc/web-admin-notification → @skyroc/web-ui-antd + @skyroc/web-ui-compose
@skyroc/web-admin-runtime → @skyroc/utils
@shell/devtools / admin-styles / admin-vite 无内部依赖完整的 30 包总表、跨层依赖规则和被依赖排行见 包总览。
packages/web/ 下有几处目录名与发布名不一致,看包名不要按目录猜:
| 目录 | 包名 |
|---|---|
packages/web/shadcn-ui | @skyroc/web-ui |
packages/web/antd-theme | @skyroc/adapter-antd-theme |
packages/web/materials | @skyroc/materials(无 web- 前缀,历史专名) |
其余 packages/web/* | @skyroc/web-* 同名 |
@skyroc/tailwind-plugin 不在这棵树里——它同时给 Web 和 Native 生成设计令牌,住在
packages/@core/tailwind-plugin。
Last updated on