Documentation site for clice.io, built with VitePress.
This repo provides a composite action. When docs change in a source repo, it creates a PR here, validates the build, and auto-merges.
Add this workflow to your repo:
# .github/workflows/publish-docs.yml
name: publish docs
on:
push:
branches: [main]
paths:
- "docs/**"
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: clice-io/docs@main
with:
project: your-project-name
token: ${{ secrets.CLICE_DOCS }}Repositories with a Chinese tree keep docs/zh segment-isomorphic to
docs/en, attested by hash pairs in docs/meta/translations
(rules). This composite action fails a PR
whose trees drifted apart:
jobs:
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: clice-io/docs/check-translations@v1
# with:
# en: docs/en
# zh: docs/zh
# meta: docs/meta/translations
# ignore: |
# reference/**The action sets up Node.js 24 with actions/setup-node, which also changes
the node every later step of the calling job runs; put it last, or set
up the node you need again after it.
Locally, the same checker runs as npx @clice-io/translate@1 check
(report, record, review); see tools/translations.
Releases: v1.0.0-style tags are immutable and publish the npm package;
v1 moves to the newest v1.x.y. A new release is tagged only when the
action or the tool changed. After pushing the release tag, move v1:
git tag -f v1 vX.Y.Z && git push -f origin v1Two-level directory structure. Sidebar is auto-generated: level 1 directories become groups, level 2 .md files become items (title extracted from the first # heading).
docs/
├── en/
│ ├── guide/
│ │ ├── intro.md
│ │ └── quick-start.md
│ ├── design/
│ │ └── architecture.md
│ └── dev/
│ └── build.md
└── zh/ # same structure
└── ...
npm install
npm run devTo preview with docs from other repos, copy them in:
cp -rf ../clice/docs/en en/clice
cp -rf ../clice/docs/zh zh/clice