从 0 到 1 开发 Splicetree无头树:项目搭建与 Monorepo

3 阅读1分钟

SpliceTree 是一个无头(Headless)、框架无关的树运行时。专注树的结构、状态与行为,通过插件扩展勾选、拖拽、搜索、懒加载、键盘/点击选择等能力;UI 渲染由你决定,官方提供 Vue 3 适配器。

为了同时维护核心、插件、适配器与文档,我们使用 Monorepo。包结构清晰、构建与发布方便、类型共享更顺手。

目录结构

  • packages/core:核心库
  • packages/plugins/*:插件(checkable、dnd、keyboard、pointer、selectable、lazy-load、search)
  • packages/adapters/*:适配器(Vue 3)
  • docs:文档站(VitePress)
  • .changeset:版本与发布配置

工作区与构建

  • 包管理:pnpm
  • 构建工具:tsdown(输出 ESM 与类型)
  • 工作区声明:pnpm-workspace.yaml

常用脚本

  • 开发全仓库:pnpm dev
  • 构建全仓库:pnpm build
  • 文档站开发:pnpm --filter @splicetree/docs dev

  • 相关链接: