smalljs$mol搜索⌘ K文档演练场对比生态系统关于ZH
工具链Getting Started介绍心智模型快速上手从 TypeScript 到 view.tree项目结构工具链Essentials安装视图状态与响应式路由渲染测试部署故障排查Data数据获取数据模式Giper BazaMore展示来自 React、Vue 和 Svelte食谱Advanced插件模块元数据离线幽灵视图About常见问题团队发布API$mol_button_major$mol_button_minor$mol_string$mol_number$mol_text$mol_paragraph$mol_list$mol_row$mol_link$mol_check$mol_switch$mol_select$mol_scroll$mol_page$mol_pick

工具链

$mol 在任何编辑器中都能工作,但一小套工具能让 .view.tree 和带类型的样式舒适得多:一个项目脚手架、一个语言服务器、面向 Zed 和 VS Code 的编辑器集成,以及一个把框架教给 LLM 助手的技能。

脚手架生成项目

create-view-tree-lsp 生成一个开箱即用的 $mol 模块,这样你就不必手工拼装样板代码:1npx create-view-tree-lsp bog/myapp请在自己的 MAM 检出根目录下运行:模块路径从那里解析,项目也该待在那里。不在工作区里时,命令会先警告,而不是让你到第一次构建才发现。参数是模块路径(namespace/name,或等价的 bog_myapp)。它会为一个可运行的应用写出 view.treeview.tsview.css.tsindex.html,外加用于部署的 GitHub Actions。生成器能加的东西,默认全都加上。你只需要点名不想要的那些:1npx create-view-tree-lsp bog/myapp --no-tauri --no-backend--no-baza — local-first 存储 Giper Baza--no-docker — 含 docker-compose.yml 与 nginx 配置的 Docker 配置--no-tauriTauri 桌面外壳--no-backend — 带 node:sqlite 存储和共享 TypeScript 条目类型的 $mol_server REST 后端--no-prerender--no-seo — 搜索引擎可见性,见下文 持续集成遇到不认识的标志就停下,免得一个笔误悄悄把东西留在项目里。脚手架只是语言服务器中 CLI 的一层薄封装,所以 npx view-tree-lsp create bog/myapp 会直接做同样的事。

翻译

翻译文件跟自己的模块放在一起,位于 <模块>/<名称>.locale=<lang>.json。这对代码很方便,对译者却不然:他拿到的不是一份句子清单,而是三十个零碎文件。 $yuf_localizer 正是为此而生。把项目地址和语言代码告诉它,它就会把所有键汇成一份可搜索的列表,并标出尚未处理的部分:只有英文的键、改动过但还没提交的键,以及项目中已不存在的过期键。译文保存在浏览器里,直到你导出为止,因此两次会话之间不会丢失。译者完成后,导出结果并把它拆回各个模块:1# 在 MAM 根目录下执行2npx view-tree-lsp locale bog/myapp/app/- --exclude=mol --update参数可以是目录,也可以是单个语言文件。选项:每个键自身带着所属模块的路径,所以 $my_page_greeting 会落到 my/page/page.locale=ru.json,就在它所属的源码旁边。不过要算出这个模块,比看上去更微妙:_ 既分隔目录也分隔单词,因此「最长匹配路径」是错误答案。$my_page_lang_hint 的属性名以 lang 开头,若旁边真的存在 my/page/lang 子模块,这个键就会被它吞掉。因此该命令会逐个询问候选模块声明了哪些键——MAM 正是把这些键写进它在 -view.tree 下的语言文件——再把键交给真正的归属者。

持续集成

脚手架会把 GitHub Actions 写入 .github/workflows/,于是新项目无需额外配置即可部署和发布。deploy.yml 在每次 push 时运行。它用 hyoo-ru/mam_build 构建应用,从 mainapp/- 发布到 GitHub Pages,并给每个 feature/* 分支各自的预览文件夹——分支被删除时会自动移除。

SEO

两者默认都开着,也都在 v* 标签上触发:--no-prerender 去掉那一步:用 b-on-g/mol-prerender-action 把你列出的界面(比如 home)渲染成静态 HTML —— 爬虫和链接预览能看到真内容,靠的就是它。--no-seo 去掉 $bog_seo 运行时:带站点地图、robots.txtllms.txt 和逐页 meta 注入的 pathname 路由器。该任务会伺服构建产物、导出规范的预渲染 HTML,再折回部署里。两者覆盖同一片地、写同一个目录,所以 deploy.yml 里只会留下一个:$bog_seo 开着就是它,一旦传了 --no-seo 就换成预渲染 action。需要站点地图和逐页元数据就留着 $bog_seo;如果活儿就是几个公开界面,退到预渲染 action 即可。

Tauri 桌面

在 GitHub 上编辑此页这有帮助吗?上一页项目结构下一页安装
本页内容脚手架生成项目翻译持续集成SEOTauri 桌面语言服务器ZedVS CodeLLM 技能链接
Type to search the documentation.