docs(landing): bring the docs site to 0.10 parity - #16
Merged
Merged
Conversation
The docs page had drifted several releases behind the framework. It still advertised an `ai` feature (removed in 0.6.0), described the queue as Postgres-only with the pre-0.9 `Queue::new(pool)` / `|payload|` API, showed `Pg::from_env()` without its pool argument, and documented migrations as hand-written closures only — no sign of the diff/generate/drift workflow. Whole pillars had no page at all: WebSockets, PubSub, channels and presence, actors and supervision, the REPL, relations, JSON path queries, full-text and hybrid search, embeddings, reactive queries, backend capabilities, row locks/isolation/RETURNING/bulk insert, advisory locks, collections, crypto, static files, credentialed CORS, ops_guard, and App::listener. Adds the internals and options the framework never explained anywhere but its source: the request lifecycle and guard ordering, why keep-alive is capped twice, the two slowloris deadlines, panic isolation and its panic=abort caveat, how an upgrade detaches from the worker, plus every Limits and WsConfig field with its default, the per-backend capability matrix, and the crate map. 53 sections in 7 groups, up from 30 in 6. Landing page: fixed the 362 KB figure (394 KB measured), the Cargo snippet, the queue feature card, the stale jobs tutorial step, and added a realtime step. Verified: vite build clean, svelte-check 0 errors, and a headless render confirms 53 nav links against 53 article anchors with no broken deep-links, no horizontal overflow, and every escaped brace rendering literally.
enekos
marked this pull request as ready for review
September 1, 2026 18:04
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.
The docs page had drifted several releases behind the framework. This is a docs-only change —
landing/src/Docs.svelteandlanding/src/Landing.svelte, nothing undercrates/.Things that were wrong, not just missing
aiis a default featureBackendsince 0.9.0Queue::new(pool), handler takes|payload|Queue::new(store), handler takes&JobCtxPg::from_env()Pg::from_env(8)362 KBcore binary394 KBmeasuredPillars that had no documentation at all
WebSockets · PubSub · channels & presence · actors & supervision · the REPL · relations · JSON path queries · full-text & hybrid search · embeddings & vector search · reactive queries · backend capabilities · row locks / isolation / RETURNING / bulk insert · advisory locks · collections · crypto · static files · credentialed CORS ·
ops_guard·App::listenerInternals & options
These existed only in the source. Added: the request lifecycle and guard ordering, why keep-alive is capped twice, the two slowloris deadlines, panic isolation and its
panic = "abort"caveat, how an upgrade detaches from the worker, where ~394 KB comes from — plus tables for everyLimitsandWsConfigfield with its default, the per-backend capability matrix, the feature matrix, and the 22-crate workspace map.53 sections in 7 groups, up from 30 in 6.
Verification
pnpm run buildclean;svelte-check0 errors / 0 warnings.scrollWidth == clientWidth); all six escaped-brace literals ({{ escaped }},{a,b,0}, …) render as literal braces.pnpm run checkstill exits non-zero, but on a pre-existingvite.config.tserror — Vite 8 droppedbrotliSize. Untouched here; worth a separate one-line fix.Note for the reviewer
The "Responses & errors" section documents 5xx bodies being redacted to
{"error":"internal error"}. That behaviour is ine2a6fd8, which is still unpushed on localmaster— this section becomes accurate the moment that commit lands.Out of scope, still stale:
README.mdlists 11 of 22 crates, and itsStatus"Next:" line names keep-alive, form-encoded bodies and relations, all of which have shipped.