Skip to content

Simplify the docs sidebar and Pro landing pages#3119

Open
justin808 wants to merge 6 commits intomainfrom
jg/docs-sidebar-pro-pages
Open

Simplify the docs sidebar and Pro landing pages#3119
justin808 wants to merge 6 commits intomainfrom
jg/docs-sidebar-pro-pages

Conversation

@justin808
Copy link
Copy Markdown
Member

@justin808 justin808 commented Apr 12, 2026

Summary

Simplify the docs information architecture by removing redundant top-level sidebar sections, regrouping Building Features, keeping Deployment visible, and nesting React Server Components under React on Rails Pro. Add release note archive pages and turn home-pro into a compatibility page so the sidebar can be simplified without changing existing doc routes.

Pull Request checklist

  • Add/update test to cover these changes
  • Update documentation
  • Update CHANGELOG file

Other Information

Validated with pnpm exec eslint docs/sidebars.ts, pnpm exec prettier --check on the changed files, and a doc-id existence check covering 105 sidebar references. I did not run a full Docusaurus build in this workspace.


Note

Low Risk
Low risk documentation-only change that adds a stub page and updates a sidebar comment; no runtime code or behavior is affected beyond docs navigation/links.

Overview
Adds a new unlisted docs/pro/home-pro.md page that acts as a compatibility landing page, pointing readers to pro/react-on-rails-pro and key Pro docs.

Updates docs/sidebars.ts comments to explicitly document that pro/home-pro is intentionally excluded from the sidebar as a URL-compatibility stub.

Reviewed by Cursor Bugbot for commit a7a20bc. Bugbot is set up for automated code reviews on this repo. Configure here.

Summary by CodeRabbit

  • Documentation
    • Added Pro home documentation page featuring quick navigation links to Pro resources including the main Pro landing page, installation instructions, OSS-to-Pro upgrade guide, React Server Components documentation, Streaming SSR guide, and Node Renderer information.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 12, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 0298928e-eb0c-4cab-ade7-7a899cf8290a

📥 Commits

Reviewing files that changed from the base of the PR and between 6e8cb1c and a7a20bc.

📒 Files selected for processing (2)
  • docs/pro/home-pro.md
  • docs/sidebars.ts
✅ Files skipped from review due to trivial changes (2)
  • docs/sidebars.ts
  • docs/pro/home-pro.md

Walkthrough

A new documentation compatibility stub page is added at docs/pro/home-pro.md with frontmatter metadata and redirect guidance to the canonical Pro landing page. The sidebar configuration is updated to include this legacy entry in the exclusions list for proper routing.

Changes

Cohort / File(s) Summary
Pro Home Stub Documentation
docs/pro/home-pro.md
New Markdown compatibility stub with unlisted frontmatter, Pro home title, redirect instructions to react-on-rails-pro.md, and Quick Links section pointing to Pro documentation pages.
Sidebar Configuration
docs/sidebars.ts
Updated sidebar exclusions comment list to include pro/home-pro mapping to pro/react-on-rails-pro for legacy routing.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • PR #2909: Directly related — both PRs modify docs/pro/home-pro.md as a compatibility stub and update docs/sidebars.ts sidebar handling for Pro documentation routing.

Poem

🐰 A stub page hops into place,
Guiding Pro docs with grace,
Quick links dance, redirects align,
The documentation path—now fine! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main changes: simplifying docs sidebar structure and reorganizing Pro landing pages into a compatibility stub with quick links.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch jg/docs-sidebar-pro-pages

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.

…ages

* origin/main: (44 commits)
  Consolidate CSP nonce sanitization into shared module (#2828)
  Add comprehensive --rsc-pro generator tests (#3098)
  fix: cross-env validation and docs for renderer password (#3090)
  Improve package metadata and Pro upgrade CTAs (#3112)
  docs: standardize warning syntax to GFM alert format (#3115)
  docs: improve react-intl documentation for React Server Components (#3085)
  Fix generator CI SSR regression on main (#3110)
  Refocus GitHub README on docs navigation (#3113)
  Add manual dev environment testing checklist for coding agents (#3074)
  Bump version to 16.6.0
  Update CHANGELOG.md for 16.6.0 (#3078)
  fix: node-renderer diagnostic improvements (#3086)
  fix: pin third-party npm deps in generator to prevent peer dep conflicts (#3083)
  chore(deps): bump lodash from 4.17.23 to 4.18.1 in the npm-security group across 1 directory (#2920)
  fix: refactor formatExceptionMessage to accept generic request context (#2877)
  Bump version to 16.6.0.rc.1
  Update CHANGELOG.md for 16.6.0.rc.1 (#3079)
  Update CHANGELOG.md unreleased section (#3077)
  Fix Content-Length mismatch and null renderingRequest errors in node renderer (#3069)
  Improve memory debugging docs with simpler heap snapshot approach (#3072)
  ...

# Conflicts:
#	docs/pro/home-pro.md
#	docs/pro/react-on-rails-pro.md
#	docs/sidebars.ts
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
docs/pro/react-on-rails-pro.md (1)

38-44: Clarify the dummy-app link target.

The link text reads like a directory path, but it lands on the dummy app README. Renaming it to something like dummy app README would make the destination less surprising.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/pro/react-on-rails-pro.md` around lines 38 - 44, Update the link text
that currently reads "react_on_rails_pro/spec/dummy" to a clearer label like
"dummy app README" so the anchor matches its target README; locate the markdown
line containing the link text "react_on_rails_pro/spec/dummy" in
react-on-rails-pro.md and replace the visible text while keeping the existing
URL unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@docs/pro/react-on-rails-pro.md`:
- Around line 38-44: Update the link text that currently reads
"react_on_rails_pro/spec/dummy" to a clearer label like "dummy app README" so
the anchor matches its target README; locate the markdown line containing the
link text "react_on_rails_pro/spec/dummy" in react-on-rails-pro.md and replace
the visible text while keeping the existing URL unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 1a38f3fa-d631-4a5b-bd52-34fd241737f1

📥 Commits

Reviewing files that changed from the base of the PR and between 6e154b2 and 6e8cb1c.

📒 Files selected for processing (5)
  • docs/oss/upgrading/release-notes/index.md
  • docs/pro/home-pro.md
  • docs/pro/react-on-rails-pro.md
  • docs/pro/release-notes/index.md
  • docs/sidebars.ts

Comment thread docs/pro/home-pro.md
@claude
Copy link
Copy Markdown
Contributor

claude bot commented Apr 12, 2026

Review: Simplify the docs sidebar and Pro landing pages

Scope note: The PR title and description mention sidebar reorganisation (removing redundant top-level sections, nesting RSC under Pro, release-note archive pages), but the actual diff is a single 14-line file: docs/pro/home-pro.md. The commit log shows merge conflicts against docs/pro/react-on-rails-pro.md and docs/sidebars.ts were resolved during the latest merge commit — those changes appear to have been dropped in favour of main. Worth clarifying whether the sidebar simplification is intentionally deferred or was accidentally lost.


The compatibility page itself

All six relative links in the file resolve to existing files:

  • ./react-on-rails-pro.md
  • ./installation.md
  • ./upgrading-to-pro.md
  • ./react-server-components/index.md
  • ./streaming-ssr.md
  • ./node-renderer.md

The file is intentionally absent from docs/sidebars.ts, which is the right call for a backwards-compat route.

One actionable issue

See inline comment: Docusaurus v3 warns about docs that exist on disk but appear in no sidebar. Adding unlisted: true to the frontmatter silences that warning while still generating the URL — which is exactly the intent of this page. Since no full Docusaurus build was run locally, this would only surface in CI.

@greptile-apps
Copy link
Copy Markdown

greptile-apps bot commented Apr 12, 2026

Greptile Summary

This PR simplifies the docs sidebar by regrouping content under cleaner top-level categories, moves RSC under "React on Rails Pro", surfaces "Deployment" as its own section, and adds a "Upgrading & Migration" section that aggregates both OSS and Pro upgrade docs. It also introduces docs/pro/home-pro.md as a unlisted: true compatibility stub keeping the old URL alive while pointing readers to the canonical Pro landing page.

All sidebar doc IDs I could verify resolve to real files on disk (upgrading/release-notes/index, pro/release-notes/index, building-features/node-renderer/*, migrating/*, pro/react-server-components/*), and the prior frontmatter concern (missing unlisted/description) was addressed in the final commit.

Confidence Score: 5/5

Safe to merge — documentation-only change with no runtime code impact.

All P2-or-lower findings; previous frontmatter concern was resolved in a7a20bc; verified sidebar doc IDs map to real files; no broken links or logic issues identified.

No files require special attention.

Important Files Changed

Filename Overview
docs/pro/home-pro.md New compatibility stub with unlisted: true and a description field; all six relative links resolve to existing files in docs/pro/.
docs/sidebars.ts Sidebar restructured into six top-level categories; sampled doc IDs (upgrading/release-notes/index, pro/release-notes/index, building-features/node-renderer/*, migrating/*, RSC entries) all exist on disk.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A["Old /pro/home-pro URL"] -->|"unlisted: true stub"| B["docs/pro/home-pro.md"]
    B -->|"redirect link"| C["docs/pro/react-on-rails-pro.md\n(canonical Pro landing)"]

    D["Sidebar docsSidebar"] --> E["Getting Started"]
    D --> F["Core Concepts"]
    D --> G["Building Features"]
    D --> H["Reference"]
    D --> I["Deployment"]
    D --> J["Upgrading & Migration"]
    D --> K["React on Rails Pro"]

    J --> L["upgrading/release-notes/index\n(OSS archive)"]
    J --> M["pro/release-notes/index\n(Pro archive)"]

    K --> N["pro/react-server-components/*\n(RSC — moved under Pro)"]
    G --> O["building-features/node-renderer/*\n(Node Renderer Pro — detailed articles)"]
Loading

Reviews (2): Last reviewed commit: "Add unlisted frontmatter to home-pro com..." | Re-trigger Greptile

Comment thread docs/pro/home-pro.md
- Add `unlisted: true` and `description` frontmatter to docs/pro/home-pro.md
  to suppress Docusaurus "not in any sidebar" build warning
- Note pro/home-pro in sidebars.ts excluded-files comment for discoverability

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
@justin808
Copy link
Copy Markdown
Member Author

Re the scope question from @claude[bot]: the sidebar reorganization in sidebars.ts and react-on-rails-pro.md changes are present — they came in via the merge commit from main. The PR diff showing only home-pro.md is because gh pr diff compares the branch tip against the merge base, and those files were already on main. The changes are intentional and intact.

Re the P2 suggestion from @greptile-apps[bot] about noting pro/home-pro in the sidebars.ts excluded-files comment: addressed in a7a20bc.

Comment thread docs/sidebars.ts
@@ -5,6 +5,7 @@ import type { SidebarsConfig } from '@docusaurus/plugin-content-docs';
// - building-features/rails-webpacker-react-integration-options
// - deployment/troubleshooting-when-using-webpacker
// - misc/asset-pipeline
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.

The pro/home-pro entry is grouped under the header comment "legacy stubs that redirect to archive", but home-pro is a compatibility stub pointing to the current Pro landing page (pro/react-on-rails-pro), not an archive. This creates a misleading categorisation.

Consider splitting the block into two sections, e.g.:

Suggested change
// - misc/asset-pipeline
// - pro/home-pro (URL-compatibility stub → pro/react-on-rails-pro)
//
// Intentionally excluded from sidebar (legacy stubs that redirect to archive):

Or rename the header to cover both cases:

Suggested change
// - misc/asset-pipeline
// - pro/home-pro (URL-compatibility stub → pro/react-on-rails-pro)
//
// Contributing/Resources pages (linked from introduction.md instead of sidebar):

Either way, the distinction between "points to a live page" and "points to an archive" is worth preserving for future editors.

@claude
Copy link
Copy Markdown
Contributor

claude bot commented Apr 15, 2026

Code Review

Overview

This PR adds a URL-compatibility stub (docs/pro/home-pro.md) for old links that pointed to /pro/home-pro, and documents the exclusion in docs/sidebars.ts. The change is documentation-only (20 lines added, nothing deleted) and carries no runtime risk.


What works well

  • Correct Docusaurus pattern: Using unlisted: true in frontmatter is the right approach for a URL-compatibility page — the route remains accessible but is excluded from the sidebar and Algolia search index.
  • All linked targets exist: Every relative link in the stub (./react-on-rails-pro.md, ./installation.md, ./upgrading-to-pro.md, ./react-server-components/index.md, ./streaming-ssr.md, ./node-renderer.md) resolves to a real file in the repo.
  • No sidebar pollution: The stub is correctly absent from the sidebar tree in sidebars.ts.

Issues

Minor — comment block miscategorises pro/home-pro

See the inline comment on docs/sidebars.ts line 7. The home-pro entry is placed under the heading "legacy stubs that redirect to archive", but it redirects to a live, current page. A future editor could reasonably misread this and treat it as an archive link. The fix is a one-line comment change.


Observations (no action required)

  • No true HTTP redirect: The stub serves content with links rather than issuing a 301/302. That is fine here because unlisted: true prevents search-engine indexing of the duplicate, and the page content is clear about where canonical content lives. A Docusaurus client-redirect plugin entry would give a cleaner UX, but is out of scope for this PR.
  • No custom_edit_url: null: Unlisted pages sometimes set this to suppress the "Edit this page" footer button. Not strictly necessary, but worth noting if it becomes a pattern.

Summary

Safe to merge after the minor comment-block fix. All linked files exist, the Docusaurus unlisted pattern is used correctly, and the sidebar is untouched.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant