umijs/dumi

dumi 2.0 TODOs

Offen

#1.157 geöffnet am 02.08.2022

 (20 Kommentare) (8 Reaktionen) (1 zugewiesene Person)JavaScript (1.169 Forks)github user discovery
help wanted

Repository-Metriken

Stars
 (3.796 Sterne)
PR-Merge-Metriken
 (Durchschn. Merge 4h 27m) (21 gemergte PRs in 30 T)

Beschreibung

欢迎参与 dumi 2.0 的建设,这里是待办任务合集,持续更新中... 下方任务列表中带 ⭐️ 的为 first-time task,⭐️ 数量越多代表难度越高 做之前请先评论认领,避免冲突

详细功能规划参考 #1151

dumi_2 0_v1

基础工程

路由系统

Markdown 编译

demo 编译

主题系统

  • ⭐️ 让 import from 'dumi' 拥有类型,导出 theme-api 的类型定义
  • 全局 Context
  • 主题 API
    • ⭐️⭐️ useNavData 支持约定式二级导航(比如 /docs/a/b1/c/docs/a/b2/c 中的 b1 和 b2 就属于同一个二级导航)
    • ⭐️⭐️⭐️ useSiteSearch 支持把搜索计算逻辑放到 worker 做,避免站点文本匹配计算量太大的时候阻塞渲染
  • 内置组件(注意:均无需样式,最后统一加【有可能用 CSS-in-JS】,必须要样式的组件就用 CSS 简单写一下
  • 主题系统设计 @PeachScript https://github.com/umijs/dumi/discussions/1180
  • 加载器(项目级 > 包级 > 默认主题) @PeachScript https://github.com/umijs/dumi/commit/b0e0e54a8ef188c8a74aa5a8d3a1a8a27a63b390
  • 默认主题, @PeachScript
    • layouts
      • DocLayout
        • tdk 渲染(用于 SEO)
        • 中英文排版优化(计划基于 heti
        • 首页设计 + 实现 @PeachScript
    • builtins
      • Previewer, @PeachScript
        • ⭐️⭐️ 在 CodeSandbox 中打开 @wyy0512 #1250
        • ⭐️⭐️ 在 CodePen 中打开
        • ⭐️⭐️ 在 Stackblitz 中打开 @miracles1919 #1271
      • SourceCode,参考 dumi v1 重写
      • API, @PeachScript
    • slots(可局部覆盖的插槽)
      • ⭐️ContentTabs 支持识别 Tab 上的子组件,渲染该 Tab 的 Action(最右侧)和 Extra(紧跟 Tab)区域
      • ⭐️LangSwitch
        • 支持不刷新页面切换语言(主要涉及到 context 链路上的状态更新)
        • 支持两种语言以上的 Select 切换方式
      • ⭐️⭐️ SearchResult
        • 上下键选择结果时、如果遇到滚动区域外的元素,支持自动滚动到滚动视口内
  • 支持实体路由的 Tab 注册

自动 API

  • 组件属性定义 parser
  • 组件属性 UI 面板
  • 生成原子资产(组件、函数)元数据
  • 注册 Playground Tab

文档 & 脚手架

  • 站点脚手架
  • 组件研发脚手架(RC 阶段先手动集成 father 4)
  • 主题研发脚手架
  • RC 阶段文档
    • 配置项
    • 主题
    • 快速上手
  • 正式版文档

Contributor Guide