Skip to content

docs: reorganize use cases navigation - #12410

Merged
athreesh merged 5 commits into
mainfrom
docs/use-cases-nav-reorg
Jul 30, 2026
Merged

docs: reorganize use cases navigation#12410
athreesh merged 5 commits into
mainfrom
docs/use-cases-nav-reorg

Conversation

@athreesh

@athreesh athreesh commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Overview:

Reorganizes the Dynamo docs IA around separate Kubernetes and CLI guide tabs, a renamed Use Cases tab, and a flattened Reference tab without a selector.

Details:

  • Renames the Features tab to Use Cases while keeping routing, disaggregated serving, and KV cache offloading in the guide tabs instead of promoting them into Use Cases.
  • Keeps Kubernetes Guide and CLI Guide as separate top-level tabs, with Getting Started and Operations open by default and the remaining sections folded.
  • Promotes KV-aware routing, disaggregated serving, and KV cache offloading into top-level folded sections in both Kubernetes and CLI.
  • Moves LoRA Adapters into Operations for both Kubernetes and CLI, renames DynoSim to Simulation with DynoSim, and adds Standalone Router to both guide surfaces.
  • Flattens Reference from a variant selector into folded sections for Releases, Kubernetes API, Components, Backends, Observability, and NIXL Connect.
  • Adds a Kubernetes quickstart image selector that only emits variables consumed by the quickstart path and requires a user registry for Intel XPU image copy commands.
  • Removes WeChat from the home page community rail for now.

Where should the reviewer start?

Start with docs/fern/index.yml for the navigation model, then docs/fern/kubernetes/quickstart.mdx and docs/fern/components/KubernetesContainerSelector.tsx for the quickstart widget.

Related Issues

🚫 This PR is NOT linked to an issue:

  • Confirmed — no related issue

Validation

  • npx --yes fern-api@5.80.2 check --warnings (0 errors; existing unauthenticated redirects check skip and accent contrast warning)
  • npx --yes fern-api@5.80.2 docs broken-links
  • npx --yes esbuild docs/fern/components/KubernetesContainerSelector.tsx --bundle --platform=browser --external:react --external:./releases.data --external:./local-selector-styles --outfile=/tmp/kubernetes-container-selector.js
  • git diff --check

Signed-off-by: Anish Maddipoti <amaddipoti@nvidia.com>
@athreesh
athreesh requested a review from a team as a code owner July 30, 2026 00:43
@copy-pr-bot

copy-pr-bot Bot commented Jul 30, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@github-actions github-actions Bot added docs documentation Improvements or additions to documentation labels Jul 30, 2026
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Walkthrough

Adds an interactive Kubernetes container selector, integrates it into the quickstart, and updates documentation navigation, contribution placement, and redirects.

Changes

Kubernetes quickstart selector

Layer / File(s) Summary
Container selector implementation
docs/fern/components/KubernetesContainerSelector.tsx
Adds hardware, backend, and build choices, compatibility rules, generated commands, clipboard copying, and named/default exports.
Quickstart integration
docs/fern/kubernetes/quickstart.mdx
Replaces accelerator-path instructions with the selector and reuses PLANNER_IMAGE in the NVIDIA deployment template.

Documentation information architecture

Layer / File(s) Summary
Sidebar and tab navigation
docs/fern/index.yml
Renames the Use Cases tab, updates collapsed sections, adds routing and LoRA entries, reorganizes use-case groups, and moves Contributing to Community.
Documentation redirects
docs/fern/docs.yml
Retargets redirects for disaggregated serving, routing, KV cache offloading, and LoRA adapters while preserving the stylesheet reference.

Estimated code review effort: 3 (Moderate) | ~20 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title is concise and matches the main documentation navigation reorganization in the PR.
Description check ✅ Passed The description follows the required template and includes all required sections, including issue status and reviewer start points.

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 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 `@docs/fern/components/KubernetesContainerSelector.tsx`:
- Around line 65-100: Update commandFor and its caller to require a
user-provided registry/namespace before generating custom-image commands, and
use that value when constructing XPU_IMAGE and RUNTIME_IMAGE instead of the
hardcoded registry.example.com placeholder. Ensure the selector collects or
validates this input before allowing either custom build path to be copied.
- Around line 169-174: Update copyCommand to catch navigator.clipboard.writeText
failures and set a retryable failure label/state when copying is denied or
fails. Preserve the existing successful “Copied!” label and reset behavior, and
ensure missing clipboard support also surfaces the same failure state instead of
returning silently.
🪄 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: CHILL

Plan: Enterprise

Run ID: 92df2614-8f85-42b3-b6a1-45568dd94dbe

📥 Commits

Reviewing files that changed from the base of the PR and between 35c3cb7 and 93d10f8.

📒 Files selected for processing (4)
  • docs/fern/components/KubernetesContainerSelector.tsx
  • docs/fern/docs.yml
  • docs/fern/index.yml
  • docs/fern/kubernetes/quickstart.mdx

Comment thread docs/fern/components/KubernetesContainerSelector.tsx Outdated
Comment thread docs/fern/components/KubernetesContainerSelector.tsx

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 potential issue.

Open in Devin Review

Comment thread docs/fern/components/KubernetesContainerSelector.tsx
Comment thread docs/fern/kubernetes/quickstart.mdx
Comment thread docs/fern/index.yml
Comment thread docs/fern/components/KubernetesContainerSelector.tsx Outdated
Comment thread docs/fern/index.yml
Comment thread docs/fern/index.yml
Signed-off-by: Anish Maddipoti <amaddipoti@nvidia.com>
@athreesh

Copy link
Copy Markdown
Contributor Author

/ok to test 68f5ab4

@github-actions

github-actions Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@athreesh
athreesh enabled auto-merge (squash) July 30, 2026 14:33
Signed-off-by: Anish Maddipoti <amaddipoti@nvidia.com>
@athreesh
athreesh force-pushed the docs/use-cases-nav-reorg branch from 8cb2b84 to 0fab5fe Compare July 30, 2026 14:34
@athreesh

Copy link
Copy Markdown
Contributor Author

/ok to test 0fab5fe

@athreesh
athreesh merged commit 3af87eb into main Jul 30, 2026
94 checks passed
@athreesh
athreesh deleted the docs/use-cases-nav-reorg branch July 30, 2026 16:06

@akshatha-k akshatha-k left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rest lgtm

Comment thread docs/fern/index.yml
path: kubernetes/inference-gateway.mdx
- page: Standalone Router
slug: standalone-router
path: components/router/router-guide.md

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

standalone router redirects to old router guide- Need to convert https://github.com/ai-dynamo/dynamo/tree/main/components/src/dynamo/router/ into a fern doc

Comment thread docs/fern/index.yml
- page: Disaggregated Serving
- page: Standalone Router
slug: standalone-router
path: components/router/router-guide.md

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see above^

return [
`export DYNAMO_VERSION=${CURRENT_TAG}`,
'export PLANNER_IMAGE="nvcr.io/nvidia/ai-dynamo/dynamo-planner:${DYNAMO_VERSION}"',
].join("\n");

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Planner image referenced but since it is a quickstart the 'Planner' hasn't been introduced and can be confusing why it's not just a dynamo container

}

function commandFor(hardware: Hardware, registry: string): string {
if (hardware === "intel") {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

contains a non-clickable 'add registry' button on the right side of the intel custom DGD image.
since there's a text box to input registry/namespace- can perhaps put 'How to add registry' for the custom docker build instructions

dagil-nvidia added a commit that referenced this pull request Aug 3, 2026
The Reference tab's General group is shared across versions: release
snapshots keep its nav on ../pages-dev/ so every version dropdown renders
the always-current reference. Both the workflow and the composition
harness found that group with

  .navigation[] | select(.tab == "reference")
    | .variants[] | select(.title == "General")

#12410 deliberately flattened the Reference tab into folded sections with
no variant selector. The selector has matched nothing since 2026-07-30 --
verified against docs-website, where dev.yml carried `title: General` on
07-27 through 07-29 and lost it on 07-30. Shared Reference has been off
ever since, and would have frozen a per-version reference copy at the next
tag cut. Nothing failed, because the only guard was a ::warning:: that
fires during a tag cut where nobody reads it.

Key the group on where its content lives instead. #12373 moved those pages
to pages/reference/general/ and gave every other former variant its own
directory, so the split the variants expressed in the nav is now expressed
by directory -- a signal IA work does not rename in passing. The Reference
tab's flattening is preserved; only the machinery moves.

The snapshot drop and the version-config revert become plain path
operations, which also removes a live defect: a yq assignment whose
left-hand side traverses a missing key auto-creates it, so the dead
`.variants[]` selector injected an empty `variants: []` into the composed
dev.yml and <TAG>.yml. That invalidates the whole navigation against
Fern's schema -- reported confusingly as a bad object at
$.navigation[4].layout[3], several hundred lines from the injection.
That is the Docs Website Composition Check failure on this PR, and the
same unguarded assignment in the release-version job would have corrupted
the next tag's version file.

Both silent-skip paths in the workflow become hard failures, and the
harness gains assertion 9 asserting the group is findable at all, so the
next rename fails on the PR that causes it rather than six days later.
Assertion 4 also stops false-passing: its find target no longer exists, so
find errored and wc counted zero while the assertion reported ok.

Validation:
  DOCS_WEBSITE_REF=origin/docs-website \
    bash docs/fern/scripts/simulate_docs_website.sh

  9. dev.yml exposes a shared Reference group (7 entries)          ok
  2. v9.9.9.yml: reference/general shared (13 pages-dev refs)      ok
  2. v9.9.9.yml: Components section frozen (runtime configuration) ok
  3. snapshot drops shared files, keeps versioned reference/       ok
  5. pre-rework versions gain no shared-reference pointers         ok
  6. round-two propagation reaches the cut version's nav           ok
  7. converter moved to fern/scripts/ with no stale root copy      ok
  8. translated links resolve to dev and tag-pinned site URLs      ok
  1. fern check on composed tree (0 errors)                        ok
  ALL ASSERTIONS PASSED

Was four FAILs (2, 3, 6 and fern check) before this change. Negative test:
renaming pages/reference/general/ to reference/core/ fails assertion 9 with
exit 1 while fern check stays at 0 errors, confirming a non-matching
selector no longer corrupts the tree. Composed dev.yml and v9.9.9.yml carry
no variants key. bash -n passes on all 33 run blocks in fern-docs.yml.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Signed-off-by: Dan Gil <dagil@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs documentation Improvements or additions to documentation size/XL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants