$mol
搜索
⌘ K
文档
演练场
对比
生态系统
关于
ZH
工具链
Getting Started
介绍
心智模型
快速上手
从 TypeScript 到 view.tree
项目结构
工具链
Essentials
安装
视图
状态与响应式
路由
渲染
测试
部署
故障排查
Data
数据获取
数据模式
Giper Baza
More
展示
来自 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 模块,这样你就不必手工拼装样板代码:
1
npx
create
-
view
-
tree
-
lsp
bog
/
myapp
请在自己的 MAM 检出根目录下运行:模块路径从那里解析,项目也该待在那里。不在工作区里时,命令会先警告,而不是让你到第一次构建才发现。
参数是模块路径(
namespace
/
name
,或等价的
bog_myapp
)。它会为一个可运行的应用写出
view
.
tree
、
view
.
ts
、
view
.
css
.
ts
和
index
.
html
,外加用于部署的 GitHub Actions。
生成器能加的东西,默认全都加上。你只需要点名不想要的那些:
1
npx
create
-
view
-
tree
-
lsp
bog
/
myapp
-
-
no
-
tauri
-
-
no
-
backend
-
-
no
-
baza
— local-first 存储
Giper Baza
-
-
no
-
docker
— 含
docker
-
compose
.
yml
与 nginx 配置的
Docker
配置
-
-
no
-
tauri
—
Tauri
桌面外壳
-
-
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 根目录下执行
2
npx
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
构建应用,从
main
把
app
/
-
发布到
GitHub Pages
,并给每个
feature
/
*
分支各自的预览文件夹——分支被删除时会自动移除。
SEO
两者默认都开着,也都在
v
*
标签上触发:
-
-
no
-
prerender
去掉那一步:用
b
-
on
-
g
/
mol
-
prerender
-
action
把你列出的界面(比如
home
)渲染成静态 HTML —— 爬虫和链接预览能看到真内容,靠的就是它。
-
-
no
-
seo
去掉
$bog_seo
运行时:带站点地图、
robots
.
txt
、
llms
.
txt
和逐页 meta 注入的 pathname 路由器。该任务会伺服构建产物、导出规范的预渲染 HTML,再折回部署里。
两者覆盖同一片地、写同一个目录,所以
deploy
.
yml
里只会留下一个:
$bog_seo
开着就是它,一旦传了
-
-
no
-
seo
就换成预渲染 action。需要站点地图和逐页元数据就留着
$bog_seo
;如果活儿就是几个公开界面,退到预渲染 action 即可。
Tauri 桌面
在 GitHub 上编辑此页
这有帮助吗?
是
否
上一页
项目结构
下一页
安装
本页内容
脚手架生成项目
翻译
持续集成
SEO
Tauri 桌面
语言服务器
Zed
VS Code
LLM 技能
链接
Type to search the documentation.