Appearance
部署文档站
Molio 的 GitHub Pages 发布面由两部分组成:
https://molio.emm.sh/:Vue demo,由 Vite 构建到dist/。https://molio.emm.sh/docs/:VitePress 文档,由 VitePress 构建到dist/docs/。
本地开发
bash
pnpm run dev
pnpm run docs:dev默认端口:
| 命令 | 地址 |
|---|---|
pnpm run dev | http://localhost:3334/ |
pnpm run docs:dev | http://localhost:3335/docs/ |
本地构建
bash
pnpm run build:demo
pnpm run build:docs
pnpm run build:site| 脚本 | 输出 |
|---|---|
build:demo | dist/ |
build:docs | dist/docs/ |
build:site | 先构建 demo,再构建 docs,得到完整 Pages artifact。 |
Base URL
文档站默认 base 是 /docs/,适配自定义域 molio.emm.sh。
| 环境变量 | 默认值 | 用途 |
|---|---|---|
VITE_BASE_URL | / | Vite demo 的 base。 |
DOCS_BASE_URL | /docs/ | VitePress 文档的 base。 |
PAGES_BASE_URL | / | CI/Pages 中传给 demo 的默认 base。 |
如果将站点部署到仓库子路径,例如 /mol-editor/,需要同时配置:
bash
VITE_BASE_URL=/mol-editor/
DOCS_BASE_URL=/mol-editor/docs/GitHub Actions
Pages workflow 会:
- 安装依赖。
- 用
VITE_BASE_URL构建 demo。 - 用
DOCS_BASE_URL构建 VitePress 文档。 - 上传整个
dist/目录。
CI workflow 会额外运行:
pnpm run typecheckpnpm run test:runpnpm run build:libpnpm run build:demopnpm run build:docs
Logo 与 favicon
产品 logo 使用 molio-logo.svg:
- demo:
public/molio-logo.svg - docs:
docs/public/molio-logo.svg
Vite demo 的 index.html 使用该 SVG 作为 favicon,VitePress 通过 themeConfig.logo 和 head 复用同一视觉资产。
Demo PWA
demo 构建会从 public/manifest.webmanifest 和 public/sw.js 提供 PWA 能力:
index.html声明 manifest、theme color 和移动端安装相关 meta。src/registerPwa.ts只在生产构建中注册 service worker。- service worker 预缓存 demo app shell、
molio-logo.svg、manifest.webmanifest和RDKit_minimal.wasm,并对 Vite hash 资源做运行时缓存。 - 文档站仍部署在
/docs/,service worker 会绕过该路径,避免离线 fallback 把 docs 链接误导回 demo。
文档站链接保留 .html 后缀,适配无 rewrite 规则的静态托管,避免 /docs/getting-started 这类 clean URL 在 Pages 或对象存储中返回 404。