docs-site
Write and edit the public website docs in site/routes/docs (beet.org/docs). Covers audience, diataxis mode per page, tone, routing conventions and the code-must-be-real rule. Use when touching site docs pages.
- License 许可
- Apache-2.0
- 所属仓库
- mrchantey/beet
- 最近更新
- 2026-10-23
- Stars
- ★ 134
- Forks
- 8
01 前言 Front Matter
- name
- docs-site
- description
- Write and edit the public website docs in site/routes/docs (beet.org/docs). Covers audience, diataxis mode per page, tone, routing conventions and the code-must-be-real rule. Use when touching site docs pages.
03 SKILL.md 正文
Site docs
How to write and edit the public website docs in site/routes/docs. These are the high-level docs at beet.org, distinct from the crate READMEs and the rustdoc API docs.
Audience
READMEs are for people already working with the API. The website is for people forming a mental model. Aim higher-level: explain the shape of things and why they fit together, link out to the READMEs and docs.rs for detail.
Diátaxis first
Load the docs-diataxis skill and pick one mode per page before writing. Mixing modes is the main cause of bad docs.
docs/index.md,docs/crates/*are Explanation: discuss the subject, make connections, give context. Do not instruct.docs/tutorials/*are Tutorials: a guided lesson with a visible result at every step. Do not explain, do not offer choices.
Tone
- Be cool, not boastful. No "beet's central trick", "the whole point", "that is deliberate", "the clearest demonstration". State what it does and move on. Beet has many good ideas; none of them need a fanfare.
- Never neg other stacks. Other approaches are valid in their own way. Sell beet on its own terms: malleability and the open Bevy world, not on someone else's expense.
- No em dashes. No mid-sentence line breaks in markdown, only paragraph breaks.
Conventions
- TOML frontmatter for the title:
+++\ntitle = "Foo"\n+++. - Every docs page is unlisted until a human has reviewed it:
visibility = "unlisted"in its frontmatter (a.bsxpage spreads{PageMeta{visibility: PageVisibility::Unlisted}}on its root). It serves to whoever holds the url, and appears in no sidebar, sitemap, search index or feed. A new page starts unlisted; only the reviewer removes the line. - Routes mirror the file tree under
site/routes/docs. A newfoo.mdbecomes/docs/foo; nested dirs need anindex.md. The sidebar is auto-collected from the listed pages, no manual wiring. - Link internally with absolute paths, eg
/docs/crates/beet_router. - Use language fences (
```rust,```sh) so syntax highlighting works. - LLMs love writing text, humans hate reading it. Include exactly what must be there and nothing more. Short code snippets over prose where a snippet says it better.
Code must be real
A tutorial's contract is that every step works for every reader. Ground all code in something verified:
- Prefer non-
ignoreREADME doctests and files under/examplesas the basis. - Confirm symbols are in the prelude and check the exact feature flags in the root
Cargo.tomlbefore telling a reader tocargo add beet --features X. Default features arestd, uionly, so most tutorials need to opt in (action,http_server,thread, ...). - State real prerequisites up front (eg an
OPENAI_API_KEYfor agent tutorials).
04 同仓库更多 Skills
worktree-sync-upstream
Sync a detached-HEAD worktree with its upstream branch in the main repo in both directions, rebasing only owned commits and fast-forwarding upstream, with recovery steps for tangled history and helpers for prose and secrets.toml conflicts. Use from inside a worktree.
worktree-sync-all
Sync the main branch with every worktree in both directions, applying the worktree-sync-upstream skill to each in turn, then levelling them. Use when asked to sync all worktrees.
test-the-works
Maximal project health pass. Run core tests, all tests, the example smoke set, the rsx_site verification and every downstream repo in sequence, fixing every failure and warning surfaced along the way. Use when asked to run 'the works' or fully verify the project.
test-run
Run the core test suite (just test-core) to a clean, warning-free pass, with recipes for hanging tests and mold linker flakes. Use when asked to run or fix the test suite.
test-examples
Run the workspace example smoke set to catch regressions unit tests miss, covering every feature gate combination with self-terminating examples and curl-probed servers. Use when asked to run or verify the examples.
test-dependency-audit
Audit every crate's Cargo.toml for unused, duplicate or misplaced dependencies, moving shared deps to the workspace and feature-gating where sensible. Use when asked to audit or slim dependencies.