feat(docs): overhaul guide experience#94
Merged
Conversation
added 2 commits
June 5, 2026 15:34
Complete the de-numbering pass on in-prose cross-references the IA
reorg left behind, and fix two stale cross-reference targets:
- strip stale chapter numbers from prose links ("7.6 Render pipeline
debugging" → "Render pipeline debugging" in debug-layer and
post-processing; "5.5 Audio-reactive visualization" in beat-detection).
"7.6" was also positionally wrong after the reorder (now 7.3).
- replace the hardcoded "Part 2" reference with the part name
("Core Concepts") so it survives reordering.
- fix the RenderNode API link slug (/api/rendernode/ → /api/render-node/),
which pointed at a non-existent page.
- align the Orb Dodge scaffold command with the canonical form used
everywhere else (npx create-exo-app → npm create exo-app@latest).
This was referenced Jun 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
The guide infrastructure (typecheck gate, source-backed snippets) is reliable, but onboarding and navigation still require too much prior knowledge. Chapters had no Previous/Next, no learning metadata, no visible Guide → Playground → API path, the landing page was a flat chapter list, titles/numbers were duplicated across the structure and frontmatter (and had drifted), and one chapter was orphaned and unreachable.
Solution
A focused redesign of the guide experience on top of that infrastructure:
site/src/lib/guide-structure.tsis now the single source of truth for ordering, grouping, and learning metadata (level, learning goals, prerequisites, playground examples, API links). Chapter numbers are positional, so reordering never means renumbering by hand. MDX frontmatter is slimmed to{ title, description }. Part renames: Getting Started, Debugging & Performance, Reference & Deployment. The orphanedaudio-reactive-visualizationchapter is reattached under Audio. Newintroduction/project-structurechapter.create-exo-appcommand and primary actions, a numbered recommended learning path (What is ExoJS → Setup → First scene → Frame loop → Input → Audio → Orb Dodge → Deploy), topic entry cards, and a Guide → Playground → API orientation strip.Callout(note / tip / important / common-mistake / webgpu / browser — label + glyph, never colour alone),TryIt(compact Playground + API bridge, slugs validated at build time),NextStep,GuideMeta,GuidePager.TryItadded to Your first scene, Scenes, Scene lifecycle, Graphics, Sprites, Keyboard, Gamepad, Audio basics, Debug layer, Performance, and Orb Dodge.main.ts/MainScene.tsgetguide:regions, consumed by the new Project structure chapter.Scope
Docs / site / DX only. No engine features, no runtime API changes, no new packages, no versioning, no release notes.
Validation
pnpm typecheckpnpm typecheck:guidespnpm typecheck:examplespnpm lint:strictpnpm testtest/site/guide-structure.test.tspnpm build+pnpm verify:exportspnpm verify:create-exo-apppnpm site:buildpnpm test:examples:smokepnpm format:checkreports 6 pre-existing offenders unrelated to this PR (rollup.config.ts,scripts/extract-guide-snippets.ts,scripts/verify-create-exo-app.ts,test/site/example-search.test.ts,test/site/source-snippets.test.ts,tsconfig.guides.json— all unchanged here); every file touched by this PR is prettier-clean.Visually reviewed (desktop 1440×1000 + mobile 390×844, dark + light): guide landing, What is ExoJS?, Setup, Project structure, Your first scene, Keyboard, Audio basics, Debug layer, Performance, Build Orb Dodge, Troubleshooting, Deployment.
Release note
Release preparation (PR #93) remains postponed and must be re-created or updated after this overhaul lands. This PR contains no version or changelog changes.