8fe594ff6c8907b150f41d0000442e7fa0c229d1
- src/codegen.ts:PageDeclaration → definePage 源码(漂亮缩进,语法合法) - src/render.ts:导出 generatePageSource/starterPageFrom;画廊受控 selected/onSelect - playground generator.tsx:选布局→填标题→生成→复制/保存到 pages/ - vite 中间件 /__vr-save:浏览器 POST 落盘 pages/(HMR 生效) - 验证:codegen 产物通过工程 tsc;保存中间件落盘成功;画廊 UI headless 通过
vibe-registry
万物皆注册 · 面向 AI 前端的注册式页面框架(M1 概念验证)
设计
- 完整设计文档见
docs/design.md(v0.5) - 一句话:页面 = 注册项的组合;用户/agent 只需说"用 xx 布局",结构全部来自注册表
当前结构(M1)
src/registry.ts 万物皆注册的类型基石 + 全局注册表 + 校验(含泛型 action)
src/page.ts definePage 声明层(页面只管业务)
presets/layouts/ 包内预设布局源(vr add 数据源,带 demo 预览)
cli/vr.ts vr list / add / update(防覆盖)
scripts/smoke.ts 校验闸门 + id 唯一性验证
registry/layouts/ 物化后的资产空间(预设 = 你的源码)
examples/
qa-orchestrator/ 实战编排:测试编排系统(多页面 + 自定义注册 + workspace 依赖)
实战编排示例(qa-orchestrator)
验证框架真实可用性:workspace 依赖引入、自定义注册(非预设)、多页面 definePage 编排、setup 业务数据流。
cd examples/qa-orchestrator
pnpm install # workspace:* 链接根源码
pnpm typecheck # 类型检查
pnpm orchestrate # 注册清单 + 3 页面解析树 + setup 数据流验证
快速上手
pnpm install
pnpm typecheck # 类型检查
pnpm vr list # 列出可用预设布局
pnpm vr add admin # 物化预设到 registry/layouts/admin.ts(防覆盖)
pnpm vr update admin # 对比新版,预览 diff(不写文件,除非 --force)
node --experimental-strip-types scripts/smoke.ts # 校验闸门冒烟
防覆盖原则
- 目标已存在且与预设不同(被用户改过)→ 拒绝,绝不静默覆盖
- 内容相同 → already up-to-date
- 显式
--force才允许覆盖
关键理念速记
- TS 优先 · 2. 极薄渲染内核 · 3. 布局带简易 id + live 预览
- 开放可扩展 · 5. 未使用不进产物 · 6. P 层选择预览 · 7. 预设物化进项目
Description
Languages
TypeScript
84.5%
JavaScript
15.5%