docs(site): quickstart hub, navbar/theme fixes, Evaluate + IDE (RR-1240)#1243
Conversation
Replace the linear quickstart tutorial with a Temporal-style hub of linked cards that route to the SDK quickstarts and to end-to-end walkthroughs: - quickstart.mdx: responsive .rr-card-grid of cards (Build in your IDE, Python SDK, TypeScript SDK, Use cases, Browse nodes, Deploy a server); drop the hardcoded <head><title> so titles no longer duplicate. - evaluate/use-cases.mdx: new page with two walkthroughs — build a pipeline visually in the IDE, then integrate it from Python/TypeScript with the SDKs. References the awesome-rocketride list. - spine.js: promote Evaluate from a placeholder leaf to a category holding the Use cases page. - custom.css: add .rr-card-grid (2-col responsive) reusing .rr-side-card. Verified with `builder docs:build` (onBrokenLinks: throw passes). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Remove the description from the docs:build action so the global `builder build` command no longer expands to it. The docs site is built on its own cadence; run it explicitly with `builder docs:build` (gather -> index -> compile), which still works since the action remains. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…R-1240) - custom.css: delete the .navbar__brand::before masked-overlay rule (and its :hover state) so the navbar logo link no longer shows a tinted overlay on hover. - docusaurus.config.ts: document that respectPrefersColorScheme makes the site follow the OS theme on first visit (defaultMode is only the fallback). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Hand-authored <head><title>X - RocketRide Documentation</title></head> blocks
collided with Docusaurus auto-titling (frontmatter title + "| RocketRide
Documentation" delimiter), producing a doubled page title. Remove the manual
blocks from every docs-rendered source so the title comes solely from
frontmatter:
- 57 node doc.md (nodes/src/nodes/*/doc.md)
- apps/vscode/docs/{index,installation,usage}.md
- client-typescript guide index + 5 method pages
- client-python and client-mcp docs index
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…(RR-1240) - Evaluate: author Why RocketRide, Understanding RocketRide, and Security (summarizes root SECURITY.md); spine Evaluate category now has all four pages (with the existing Use cases). - IDE Extensions: add an Overview landing page explaining VS Code + forks (Cursor/Windsurf/VSCodium) with Marketplace + Open VSX install links; prepend it in the spine above the detailed VS Code page. - spine: rename the "Nodes & Connectors" navbar section to "Nodes". Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…240) Two CSS-only fixes to the swizzled DocItem header and side cards: - Double title: CommonMark (.md) wraps a body leading `# Title` in its own <header>, so the existing `.rr-doc-header + h1` dedup never matched and the title rendered twice. Also target `.rr-doc-header + header` to hide the wrapped variant (the markdown export keeps its H1 — only the rendered duplicate is hidden). - Card hover: the `:not(#\#)` underline-kill only covered the anchor; inner title/body/code spans still picked up the propagated underline on hover. Extend the rule to descendants (`:hover *`). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…over (RR-1240) The previous :not(#\#) hack was specificity (1,2,0); Infima's `a:hover:not(#\#):not(#\#)` is (2,0,1) and won, underlining the anchor and propagating the line to the inner title/body/code spans. Match the double `:not(#\#)` to reach (2,2,0) and win on the anchor itself. Border highlight and hover lift are unchanged. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Hovering the left-side RocketRide brand now changes the title to the link accent color, matching the other navbar links. Double :not(#\#) keeps the rule above Infima's navbar specificity. The logo image is left as-is (no hover overlay). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Lead with Use cases & walkthroughs (top-left), Build in your IDE top-right, then Python and TypeScript SDKs on the second row. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
📝 WalkthroughWalkthroughThis PR comprehensively updates the RocketRide documentation site by removing hardcoded HTML title blocks from ~70 files, restructuring information architecture via spine.js, decoupling the docs build from the global builder, expanding the Evaluate section with four new authored pages, rewriting the quickstart as a card hub, improving navbar and TOC styling, consolidating IDE Extensions pages, and adding WebSocket protocol, CLI, cloud, and self-hosting documentation. ChangesDocumentation Site Refresh
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
ESLint install timed out. The project may have too many dependencies for the sandbox. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🤖 Internal: Discord sync markerAuto-managed by the Discord notification workflow. Stores the linked Discord message ID. Do not edit or delete. |
…RR-1240) Sidebar/breadcrumb/H1 for the TS SDK derive from frontmatter title; rename from Node to TypeScript so Develop reads Python / TypeScript. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Fill the four empty Concepts spine slots (Runtime & engine, Nodes & connectors, Agents & tools, Execution model) and expand the WebSocket protocol page from a stub to full connection/keepalive/session docs. Drop the port from the WebSocket tab label (spine + page title); port 5565 now lives in the page body as a connection detail, not nav noise. Rename the "Agents, tools & skills" tab to "Agents & tools" since no skill primitive exists in the product; update the understanding.md link. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…et (RR-1240) Title-case the second word of multi-word sidebar tabs (Use Cases, Runtime & Engine, Nodes & Connectors, Agents & Tools, Execution Model, CLI/Pipeline JSON Reference) so the nav reads consistently. Remove the Cursor and Windsurf pages and tabs — they only restated that the forks run the same VS Code build — and repoint the footer + IDE Extensions overview at the one VS Code page. Rename the VS Code README page title from "Overview" to "Introduction" so it no longer collides with the section's top "Overview" tab. Expand the WebSocket page with the DAP message format (request/response/ event envelopes, seq correlation, error shape, the rrext_process/rrext_ping commands) so it documents the wire protocol, not just the connection. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…-1240) Replace the placeholder stubs for CLI Reference, Cloud, Self-hosting, Troubleshooting, and Glossary with real content, and enrich the generated Pipeline JSON Reference preamble with the top-level shape and a worked example so the page leads with context before the schema tables. Color the right-hand "on this page" table-of-contents links with the theme link color (Imperial Indigo / Horizon Blue) instead of Infima's default primary-blue ramp, matching the sidebar and breadcrumb active states. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…ive (RR-1240) The "on this page" links rested in Infima's grey and only turned the theme link color on hover/active. Apply the link color (Imperial Indigo / Horizon Blue) to the resting state too so they read as links like the body text, and bold the current-section link for emphasis. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…ins (RR-1240) The prior TOC color rules used a plain .table-of-contents__link selector (specificity 0,1,2 vs Infima's build-injected :not(#\#):not(#\#) at 0,1,2 — actually 0,1,0 vs 0,1,2), so they silently lost and the links stayed grey. Match Infima's :not(#\#):not(#\#) hack on every TOC selector so the override ties on specificity and wins by source order, finally applying the theme link color to the right-nav links in all states. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Coloring every "on this page" link made the right nav uniformly blue. Keep resting links as plain body text (black light / white dark) and reserve the theme link color + bold for the current-section (active) link, with the link color also on hover for feedback. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The page lived at docs/protocols/websocket.md under a mount of 'protocols/websocket', so docs:gather published it at the doubled route /protocols/websocket/protocols/websocket and the real tab got an empty placeholder. Move it to docs/index.md so the mount resolves to the slot exactly, matching the MCP (docs/index.md) and TS-SDK mount convention. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Redirect the dropped /ide-extensions/cursor and /windsurf URLs (live on develop, so deployed) to /ide-extensions/overview, so external/bookmarked inbound links don't 404 (onBrokenLinks can't catch those). - Spell out the docs:build aggregate-build coupling: it is description-less so `builder build` skips it; adding a description would silently re-couple it. - security.md: add the "admin bypass disabled" branch-protection control so the summary doesn't omit a material item from root SECURITY.md. - custom.css: document the Infima specificity-hack coupling with an after-upgrade regression checklist, and note the title-dedup adjacent-sibling limitation. No selector changes. - test(docs): cover spine toSidebar/isValidMount/sectionFor/allDocIds and the llms buildIndex output (node --test, run by `builder docs:test`). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 5
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@packages/docs/content-static/concepts/agents-tools-skills.md`:
- Line 15: Replace the sentence "Agents introduce a second kind of wiring
alongside data lanes:" with a stronger phrasing—either "Agents introduce a
second type of wiring alongside data lanes:" or "Agents introduce a second
wiring mechanism alongside data lanes:"—so update the exact string in the docs
to one of these alternatives to remove "kind of" and improve confidence.
- Around line 10-11: Rewrite the sentence "To do that it needs a few helpers
wired to it — an LLM, optionally tools, and (for some agent types) memory." to
be more direct and concise; replace it with something like "It requires an LLM,
optional tools, and (for some agents) memory." so the meaning is preserved but
phrasing is clearer and tighter.
In `@packages/docs/content-static/glossary.md`:
- Around line 5-13: Change the incorrect heading level for the first glossary
term: replace the "### Pipeline" heading with "## Pipeline" so it follows the
top-level "# Glossary" correctly (look for the exact heading string "###
Pipeline"), and verify any other term headings use the appropriate incremental
levels relative to the glossary H1.
In `@packages/docs/scripts/lib/spine.js`:
- Around line 35-37: Update the sidebar entry that currently has id
'concepts/nodes-connectors' and label 'Nodes & Connectors' so the label reads
'Nodes' to match the new IA; also rename the id to 'concepts/nodes' (from
'concepts/nodes-connectors') to keep the identifier consistent with the new
label wherever that id is referenced (look for the object with id
'concepts/nodes-connectors' in spine.js and change both its id and label
accordingly).
In `@packages/docs/src/lib/llms.test.mjs`:
- Around line 35-39: The test "writes the node catalog landing page listing node
entries" reads the generated catalog into the variable catalog but doesn't
assert the title was renamed; update that test (the it(...) block) to assert the
catalog contains the expected title line (e.g., "title: Nodes") so the rename
from "Nodes & Connectors" is validated alongside the existing slug and link
assertions.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: 18fee8e8-c3de-4075-a9ce-38f634d2248a
📒 Files selected for processing (96)
apps/vscode/docs/index.mdapps/vscode/docs/installation.mdapps/vscode/docs/usage.mdnodes/src/nodes/accessibility_describe/doc.mdnodes/src/nodes/agent_langchain/doc.mdnodes/src/nodes/agent_rocketride/doc.mdnodes/src/nodes/anonymize/doc.mdnodes/src/nodes/astra_db/doc.mdnodes/src/nodes/atlas/doc.mdnodes/src/nodes/audio_player/doc.mdnodes/src/nodes/autopipe/doc.mdnodes/src/nodes/chroma/doc.mdnodes/src/nodes/db_clickhouse/doc.mdnodes/src/nodes/db_mysql/doc.mdnodes/src/nodes/db_neo4j/doc.mdnodes/src/nodes/db_postgres/doc.mdnodes/src/nodes/dictionary/doc.mdnodes/src/nodes/embedding_image/doc.mdnodes/src/nodes/embedding_transformer/doc.mdnodes/src/nodes/extract_data/doc.mdnodes/src/nodes/frame_grabber/doc.mdnodes/src/nodes/image_cleanup/doc.mdnodes/src/nodes/llamaparse/doc.mdnodes/src/nodes/llm_anthropic/doc.mdnodes/src/nodes/llm_bedrock/doc.mdnodes/src/nodes/llm_deepseek/doc.mdnodes/src/nodes/llm_gemini/doc.mdnodes/src/nodes/llm_gmi_cloud/doc.mdnodes/src/nodes/llm_ibm_watson/doc.mdnodes/src/nodes/llm_minimax/doc.mdnodes/src/nodes/llm_mistral/doc.mdnodes/src/nodes/llm_ollama/doc.mdnodes/src/nodes/llm_openai_api/doc.mdnodes/src/nodes/llm_perplexity/doc.mdnodes/src/nodes/llm_qwen/doc.mdnodes/src/nodes/llm_vision_gemini/doc.mdnodes/src/nodes/llm_vision_mistral/doc.mdnodes/src/nodes/llm_xai/doc.mdnodes/src/nodes/ner/doc.mdnodes/src/nodes/ocr/doc.mdnodes/src/nodes/pinecone/doc.mdnodes/src/nodes/preprocessor_code/doc.mdnodes/src/nodes/preprocessor_langchain/doc.mdnodes/src/nodes/prompt/doc.mdnodes/src/nodes/qdrant/doc.mdnodes/src/nodes/question/doc.mdnodes/src/nodes/reducto/doc.mdnodes/src/nodes/remote/doc.mdnodes/src/nodes/response/doc.mdnodes/src/nodes/summarization/doc.mdnodes/src/nodes/thumbnail/doc.mdnodes/src/nodes/tool_chartjs/doc.mdnodes/src/nodes/tool_filesystem/doc.mdnodes/src/nodes/tool_github/doc.mdnodes/src/nodes/tool_http_request/doc.mdnodes/src/nodes/tool_mcp_client/doc.mdnodes/src/nodes/tool_python/doc.mdnodes/src/nodes/twelvelabs/doc.mdnodes/src/nodes/vectordb_postgres/doc.mdnodes/src/nodes/weaviate/doc.mdpackages/client-mcp/docs/index.mdpackages/client-python/docs/index.mdpackages/client-typescript/docs/guide/index.mdpackages/client-typescript/docs/guide/methods/get-task-status.mdpackages/client-typescript/docs/guide/methods/send.mdpackages/client-typescript/docs/guide/methods/terminate.mdpackages/client-typescript/docs/guide/methods/use.mdpackages/client-typescript/docs/guide/methods/validate.mdpackages/client-typescript/scripts/gen-pipeline-ref.mjspackages/docs/content-static/cli.mdpackages/docs/content-static/cloud.mdpackages/docs/content-static/concepts/agents-tools-skills.mdpackages/docs/content-static/concepts/execution-model.mdpackages/docs/content-static/concepts/nodes-connectors.mdpackages/docs/content-static/concepts/runtime-engine.mdpackages/docs/content-static/evaluate/security.mdpackages/docs/content-static/evaluate/understanding.mdpackages/docs/content-static/evaluate/use-cases.mdxpackages/docs/content-static/evaluate/why-rocketride.mdpackages/docs/content-static/glossary.mdpackages/docs/content-static/ide-extensions/cursor.mdpackages/docs/content-static/ide-extensions/overview.mdpackages/docs/content-static/ide-extensions/windsurf.mdpackages/docs/content-static/quickstart.mdxpackages/docs/content-static/self-hosting.mdpackages/docs/content-static/troubleshooting.mdpackages/docs/docusaurus.config.tspackages/docs/redirects.tspackages/docs/scripts/lib/spine.jspackages/docs/scripts/tasks.jspackages/docs/src/css/custom.csspackages/docs/src/lib/llms.test.mjspackages/docs/src/lib/spine.test.mjspackages/docs/src/theme/Footer/index.tsxpackages/server/docs/index.mdpackages/server/docs/protocols/websocket.md
💤 Files with no reviewable changes (69)
- apps/vscode/docs/usage.md
- nodes/src/nodes/prompt/doc.md
- packages/docs/content-static/ide-extensions/windsurf.md
- packages/server/docs/protocols/websocket.md
- nodes/src/nodes/preprocessor_langchain/doc.md
- nodes/src/nodes/image_cleanup/doc.md
- nodes/src/nodes/response/doc.md
- nodes/src/nodes/astra_db/doc.md
- apps/vscode/docs/installation.md
- nodes/src/nodes/embedding_image/doc.md
- nodes/src/nodes/chroma/doc.md
- nodes/src/nodes/tool_filesystem/doc.md
- nodes/src/nodes/agent_langchain/doc.md
- nodes/src/nodes/db_mysql/doc.md
- packages/docs/content-static/ide-extensions/cursor.md
- nodes/src/nodes/llm_openai_api/doc.md
- nodes/src/nodes/tool_http_request/doc.md
- nodes/src/nodes/weaviate/doc.md
- nodes/src/nodes/twelvelabs/doc.md
- nodes/src/nodes/autopipe/doc.md
- nodes/src/nodes/atlas/doc.md
- nodes/src/nodes/llm_anthropic/doc.md
- nodes/src/nodes/llm_qwen/doc.md
- nodes/src/nodes/llm_xai/doc.md
- nodes/src/nodes/qdrant/doc.md
- nodes/src/nodes/pinecone/doc.md
- nodes/src/nodes/llm_ibm_watson/doc.md
- packages/client-typescript/docs/guide/methods/terminate.md
- nodes/src/nodes/tool_mcp_client/doc.md
- nodes/src/nodes/db_clickhouse/doc.md
- nodes/src/nodes/tool_python/doc.md
- nodes/src/nodes/dictionary/doc.md
- nodes/src/nodes/llm_gmi_cloud/doc.md
- nodes/src/nodes/tool_chartjs/doc.md
- nodes/src/nodes/db_postgres/doc.md
- packages/client-typescript/docs/guide/methods/send.md
- nodes/src/nodes/remote/doc.md
- nodes/src/nodes/question/doc.md
- nodes/src/nodes/llm_vision_mistral/doc.md
- packages/client-python/docs/index.md
- packages/client-typescript/docs/guide/methods/get-task-status.md
- nodes/src/nodes/llm_mistral/doc.md
- packages/client-mcp/docs/index.md
- nodes/src/nodes/embedding_transformer/doc.md
- nodes/src/nodes/llamaparse/doc.md
- nodes/src/nodes/llm_ollama/doc.md
- nodes/src/nodes/frame_grabber/doc.md
- nodes/src/nodes/accessibility_describe/doc.md
- nodes/src/nodes/vectordb_postgres/doc.md
- nodes/src/nodes/preprocessor_code/doc.md
- nodes/src/nodes/tool_github/doc.md
- nodes/src/nodes/llm_minimax/doc.md
- nodes/src/nodes/llm_gemini/doc.md
- nodes/src/nodes/audio_player/doc.md
- nodes/src/nodes/summarization/doc.md
- nodes/src/nodes/llm_perplexity/doc.md
- packages/client-typescript/docs/guide/methods/validate.md
- nodes/src/nodes/ner/doc.md
- packages/client-typescript/docs/guide/methods/use.md
- nodes/src/nodes/llm_bedrock/doc.md
- nodes/src/nodes/ocr/doc.md
- nodes/src/nodes/reducto/doc.md
- nodes/src/nodes/db_neo4j/doc.md
- nodes/src/nodes/thumbnail/doc.md
- nodes/src/nodes/llm_deepseek/doc.md
- nodes/src/nodes/anonymize/doc.md
- nodes/src/nodes/extract_data/doc.md
- nodes/src/nodes/llm_vision_gemini/doc.md
- nodes/src/nodes/agent_rocketride/doc.md
Summary
Docs-site (
packages/docs, Docusaurus) UX batch for RR-1240:<head><title>+ wrapped body# H1), navbar icon hover overlay removed, brand title tints to the link color on hover, side cards no longer underline inner text on hover, "Nodes & Connectors" → "Nodes", theme follows the OS preference, and the docs site build is decoupled frombuilder build(builder docs:buildruns it standalone).Type
docs
Testing
./builder testpassesbuilder docs:buildpasses withonBrokenLinks: 'throw'(spine validated, 122 pages). CSS/spine changes verified in the built bundle; pages served locally.Checklist
Related Issues
Closes #1240
Note: the
<head><title>strip also covers the 57 nodedoc.mdthat overlap #1239 — done here once.Summary by CodeRabbit