Skip to content

[WIP] docs: add Fern website developer guide for building and publishing docs#6299

Closed
Jont828 wants to merge 3 commits intoai-dynamo:mainfrom
Jont828:docs/fern-website-overview
Closed

[WIP] docs: add Fern website developer guide for building and publishing docs#6299
Jont828 wants to merge 3 commits intoai-dynamo:mainfrom
Jont828:docs/fern-website-overview

Conversation

@Jont828
Copy link
Copy Markdown
Contributor

@Jont828 Jont828 commented Feb 14, 2026

Summary

  • Adds a new Developer Guide section to the Fern docs sidebar navigation
  • Adds a page documenting how the Fern documentation website works, covering:
    • Dual-branch architecture (main vs docs-website)
    • Directory layout and configuration files
    • CI workflows (lint, sync-dev, version release, link checking)
    • Content authoring guidelines and callout conversion
    • Running locally with the Fern CLI (fern check, fern docs broken-links, fern docs dev) including the fern/ symlink requirement
    • Version management and publishing flow
    • Common maintenance tasks
  • Clarifies that the site is hosted on Fern (dynamo.docs.buildwithfern.com) and that docs.dynamo.nvidia.com is a custom domain alias

Test plan

  • Verify fern check passes with the new page and nav entry
  • Verify fern docs broken-links finds no new broken links
  • Confirm the "Developer Guide" section appears in the sidebar after the "Integrations" section

Summary by CodeRabbit

  • Documentation
    • Added comprehensive guide covering Fern website architecture, dual-branch publishing workflow, directory structures, configuration management, version control, GitHub automation pipelines, content authoring guidelines, local development setup, and publishing troubleshooting.
    • Integrated new Developer Guide section into documentation navigation under Integrations for streamlined access.

Explains the dual-branch architecture (main vs docs-website), the
three CI jobs (lint, sync-dev, release-version), callout conversion,
version management, and common maintenance tasks.
Add a "Developer Guide" section to the Fern sidebar navigation and
move the Fern website documentation into it as a proper docs page
at pages/development/fern-website.md. The page covers the dual-branch
architecture, CI workflows, callout conversion, version management,
publishing flow, and common maintenance tasks.
- Add a note clarifying the site is hosted on Fern and that
  docs.dynamo.nvidia.com is a custom domain alias pointing to it
- Add a full "Running Locally" section covering: installing the Fern
  CLI, creating the fern/ symlink, fern check, fern docs broken-links,
  and fern docs dev for local preview
- Remove the old "Preview docs locally" subsection that was a subset
  of this content
- Update URL table to clarify primary vs alias relationship
@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot Bot commented Feb 14, 2026

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
Copy link
Copy Markdown
Contributor

👋 Hi Jont828! Thank you for contributing to ai-dynamo/dynamo.

Just a reminder: The NVIDIA Test Github Validation CI runs an essential subset of the testing framework to quickly catch errors.Your PR reviewers may elect to test the changes comprehensively before approving your changes.

🚀

@github-actions github-actions Bot added external-contribution Pull request is from an external contributor docs documentation Improvements or additions to documentation labels Feb 14, 2026
@Jont828 Jont828 changed the title docs: add Fern website developer guide for building and publishing docs [WIP] docs: add Fern website developer guide for building and publishing docs Feb 14, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Feb 14, 2026

Walkthrough

Adds comprehensive documentation for the Fern-based Dynamo docs website, explaining architecture, workflows, configuration, version management, and publication procedures. Updates navigation configuration to expose the new documentation.

Changes

Cohort / File(s) Summary
Documentation and Navigation
docs/pages/development/fern-website.md, docs/versions/dev.yml
Adds extensive Fern docs site guide covering dual-branch publishing, directory layouts, configuration files, version management, GitHub workflows, content authoring, callout conversion, local development setup, and publishing procedures. Registers new guide in navigation under Integrations section.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Poem

🐰 Hops with glee through new docs bright,
Fern website guide now shines with light,
Versions, workflows, configs clear,
Publishing secrets we hold dear,
The web of docs, our burrow's pride! 🌿

🚥 Pre-merge checks | ✅ 3 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Merge Conflict Detection ⚠️ Warning ❌ Merge conflicts detected (48 files):

⚔️ components/src/dynamo/frontend/main.py (content)
⚔️ components/src/dynamo/frontend/vllm_processor.py (content)
⚔️ components/src/dynamo/global_router/__main__.py (content)
⚔️ components/src/dynamo/mocker/main.py (content)
⚔️ components/src/dynamo/sglang/args.py (content)
⚔️ components/src/dynamo/sglang/main.py (content)
⚔️ components/src/dynamo/sglang/register.py (content)
⚔️ components/src/dynamo/trtllm/workers/llm_worker.py (content)
⚔️ components/src/dynamo/trtllm/workers/video_diffusion_worker.py (content)
⚔️ components/src/dynamo/vllm/args.py (content)
⚔️ components/src/dynamo/vllm/backend_args.py (content)
⚔️ components/src/dynamo/vllm/handlers.py (content)
⚔️ components/src/dynamo/vllm/main.py (content)
⚔️ components/src/dynamo/vllm/tests/test_vllm_unit.py (content)
⚔️ container/context.yaml (content)
⚔️ container/templates/args.Dockerfile (content)
⚔️ container/templates/vllm_runtime.Dockerfile (content)
⚔️ deploy/helm/charts/crds/templates/nvidia.com_dynamographdeploymentrequests.yaml (content)
⚔️ deploy/operator/api/v1alpha1/common.go (content)
⚔️ deploy/operator/api/v1alpha1/dynamographdeploymentrequest_types.go (content)
⚔️ deploy/operator/api/v1alpha1/zz_generated.deepcopy.go (content)
⚔️ deploy/operator/config/crd/bases/nvidia.com_dynamographdeploymentrequests.yaml (content)
⚔️ deploy/operator/internal/controller/dynamographdeploymentrequest_controller.go (content)
⚔️ deploy/operator/internal/dynamo/backend_trtllm.go (content)
⚔️ deploy/operator/internal/dynamo/backend_trtllm_test.go (content)
⚔️ docs/pages/components/frontend/README.md (content)
⚔️ docs/pages/components/frontend/frontend-guide.md (content)
⚔️ docs/pages/components/router/README.md (content)
⚔️ docs/pages/components/router/router-examples.md (content)
⚔️ docs/pages/components/router/router-guide.md (content)
⚔️ docs/pages/development/backend-guide.md (content)
⚔️ docs/pages/features/multimodal/multimodal-trtllm.md (content)
⚔️ docs/pages/features/multimodal/multimodal-vllm.md (content)
⚔️ docs/pages/integrations/kv-events-custom-engines.md (content)
⚔️ docs/pages/kubernetes/api-reference.md (content)
⚔️ docs/versions/dev.yml (content)
⚔️ examples/backends/tritonserver/src/tritonworker.py (content)
⚔️ examples/multimodal/components/processor.py (content)
⚔️ lib/bindings/python/examples/hello_world/server_sglang.py (content)
⚔️ lib/bindings/python/examples/hello_world/server_sglang_tok.py (content)
⚔️ lib/bindings/python/examples/hello_world/server_vllm.py (content)
⚔️ lib/bindings/python/rust/lib.rs (content)
⚔️ lib/bindings/python/src/dynamo/_core.pyi (content)
⚔️ lib/bindings/python/src/dynamo/llm/__init__.py (content)
⚔️ lib/bindings/python/tests/test_tensor.py (content)
⚔️ lib/llm/src/preprocessor/media/README.md (content)
⚔️ tests/frontend/grpc/echo_tensor_worker.py (content)
⚔️ tests/serve/launch/template_verifier.py (content)

These conflicts must be resolved before merging into main.
Resolve conflicts locally and push changes to this branch.
✅ Passed checks (3 passed)
Check name Status Explanation
Description check ✅ Passed The description covers all required template sections: Overview (summary of additions), Details (comprehensive list of documentation content), and test plan. However, no Related Issues section is included.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check ✅ Passed The PR title accurately describes the main change: adding a comprehensive Fern website developer guide. The title is specific, concise, and directly reflects the changeset's primary focus of documentation addition.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

📝 Coding Plan
  • Generate coding plan for human review comments

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.

❤️ Share

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


---

## GitHub Workflows
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.

We should add a mention here that there's also a workflow in the docs-website branch that runs when you push directly to that branch

Comment on lines +244 to +249
Runs two independent link-checking jobs:

| Job | Tool | What it checks |
|---|---|---|
| `lychee` | [Lychee](https://lychee.cli.rs/) | External HTTP links (with caching, retries, rate-limit handling). Runs offline for PRs. |
| `broken-links-check` | Custom Python script (`detect_broken_links.py`) | Internal relative markdown links and symlinks. Creates GitHub annotations on PRs pointing to exact lines with broken links. |
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.

We should probably get rid of these jobs entirely in another PR now


### Custom components

React components in `docs/components/` can be used in markdown via MDX. The
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.

Let's link to fern's docs on custom components here: https://buildwithfern.com/learn/docs/customization/custom-react-components

Comment on lines +383 to +388
> [!NOTE]
> `fern docs dev` requires a valid `FERN_TOKEN` environment variable. Ask a
> maintainer for access, or set it in your shell profile:
> ```bash
> export FERN_TOKEN=<your-token>
> ```
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.

Is this true for doing fern docs dev locally? I thought it was only for publishing

@github-actions
Copy link
Copy Markdown
Contributor

This PR is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

@github-actions github-actions Bot added the Stale label Mar 16, 2026
@Jont828
Copy link
Copy Markdown
Contributor Author

Jont828 commented Mar 18, 2026

Closing as this is pretty out of date

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 external-contribution Pull request is from an external contributor size/XL Stale

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants