Skip to content

部署文档站

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 devhttp://localhost:3334/
pnpm run docs:devhttp://localhost:3335/docs/

本地构建

bash
pnpm run build:demo
pnpm run build:docs
pnpm run build:site
脚本输出
build:demodist/
build:docsdist/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 会:

  1. 安装依赖。
  2. VITE_BASE_URL 构建 demo。
  3. DOCS_BASE_URL 构建 VitePress 文档。
  4. 上传整个 dist/ 目录。

CI workflow 会额外运行:

  1. pnpm run typecheck
  2. pnpm run test:run
  3. pnpm run build:lib
  4. pnpm run build:demo
  5. pnpm 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.logohead 复用同一视觉资产。

Demo PWA

demo 构建会从 public/manifest.webmanifestpublic/sw.js 提供 PWA 能力:

  • index.html 声明 manifest、theme color 和移动端安装相关 meta。
  • src/registerPwa.ts 只在生产构建中注册 service worker。
  • service worker 预缓存 demo app shell、molio-logo.svgmanifest.webmanifestRDKit_minimal.wasm,并对 Vite hash 资源做运行时缓存。
  • 文档站仍部署在 /docs/,service worker 会绕过该路径,避免离线 fallback 把 docs 链接误导回 demo。

文档站链接保留 .html 后缀,适配无 rewrite 规则的静态托管,避免 /docs/getting-started 这类 clean URL 在 Pages 或对象存储中返回 404。

Released under GPL-3.0-only.