Skip to content

[docs] Redesign the docs site frame, palette and components - #6948

Merged
ashrafchowdury merged 86 commits into
mainfrom
docs/redesign-frame
Sep 18, 2026
Merged

ashrafchowdury merged 86 commits into
mainfrom
docs/redesign-frame

Conversation

@ashrafchowdury

Copy link
Copy Markdown
Contributor

Context

The docs site still had the Docusaurus default frame: a two-row header with the section links in it, blue links, coloured callouts, a centred changelog and roadmap that did not match the docs pages, and one 1,861-line custom.css that had grown by accretion. The redesign in the Claude Design artifact (docs page, changelog, roadmap) moves the site to a single header row, a section rail at the top of the sidebar, a neutral palette with a derived dark mode, and one reading column for every page type.

Changes

The frame. One header row (logo, version pill, search, theme toggle, the two CTAs). The section links (Docs, Reference, Roadmap, Changelog, Self-host, Enterprise) move into a rail at the top of the sidebar. The reading column is 720px with a 240px "On this page" column. The footer sits beside the sidebar and carries the social links, four link columns, the copyright, and a system/light/dark switch. The changelog list, changelog entries, the roadmap and the 404 page all render inside this frame through one SidebarShell component instead of their own layouts.

The palette. src/css/tokens.css is now the only place colours and frame measurements are defined (--bgdefault, --contentprimary, --borderdefault, --radius-*, --doc-content-width, ...), with the dark values derived from the light ones. Every other stylesheet reads those names. The old custom.css is split by region: typography, navbar, sidebar, content, media, search, changelog, api, footer.

Components, restyled on those tokens: code blocks (soft panel, ghost copy icon, no word-wrap toggle), inline code, tables (full width, header strip, hairline rows, wide tables scroll), admonitions (faint semantic tint), blockquotes, tabs, doc cards (two-column grid), prev/next pagination (compact buttons), the search page and the DocSearch modal, the mobile "On this page" panel, and the hamburger menu. Cloudflare Stream embeds get a skeleton while the player boots. The floating back-to-top button and the unlinked /changelog/archive page are removed.

Three bugs surfaced while doing this and are fixed here:

  • The docs sidebar was cut off once the footer scrolled into view. The theme puts clip-path: inset(0) on the sidebar container for its hideable animation, and that clips fixed descendants too.
  • <Stream responsive> positions its iframe absolutely and only adds the 16:9 box after the player reports the video size, so for the first ~600ms the skeleton's play glyph sat on top of the paragraph below. The iframe is static from first paint now.
  • A rule meant for the OpenAPI index ([class*="generatedIndexPage"] article:first-child { display: none }) hid the first card and the lead paragraph on every generated category index, including the first FAQ entry. It is scoped to the OpenAPI info card.

Left for a follow-up: the OpenAPI operation pages (method badges, request panel, schema styling) are still on the plugin's own skin.

Tests

  • pnpm build passes (production config, onBrokenLinks: throw).
  • Crawled 232 routes in the browser at 1051px (every non-API page plus a sample of OpenAPI and v1.0 pages): no 404s, no horizontal overflow, nothing escaping the reading column, sidebar fixed and footer offset on every page.
  • Phone (375) and tablet (768) on a long guide page; dark mode via the footer switch and the header toggle.
  • Demo: screenshots of the branch are outstanding and will be added to this PR.

What to QA

  • Open any guide, scroll to the footer. The sidebar stays in place beside it; no blank column.
  • Scroll the sidebar itself on a long page (Reference). The whole sidebar scrolls, including the rail at the top.
  • /changelog, /roadmap, /faq/platform, a wrong URL. All four sit in the same frame as a docs page.
  • /guides/control-what-an-agent-can-do on a slow connection: the Stream box holds its space with a play glyph, nothing overlaps the text below.
  • /faq/platform: two cards, both entries present. /faq/platform/api-rate-limits: the rate-limits table scrolls sideways inside the column.
  • Header theme toggle and the footer switch agree; logo, code colours and callout tints follow dark mode.
  • Phone width: hamburger opens the docs panel with a "Back to main menu" row; "On this page" expands as a bordered panel.
  • Regression: /1.0/prompt-engineering/quick-start (v1.0 docs) still renders its inline cards.

@github-actions

github-actions Bot commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

📘 Docs preview

Status ✅ Ready
Preview https://pr-6948-agenta-docs-preview.mahmoud-637.workers.dev/docs
Inspect Actions run
Commit 8feb573fc5911683d1d3f53377f5b6c060833a7b

This comment updates in place on every push.

@flyovers

flyovers Bot commented Sep 17, 2026

Copy link
Copy Markdown

Flyover

Watch the flyover → · 3 chapters · 52 files

This flyover is shared with the repo maintainer @mmabrouk's permission. Please don't mark it as spam. If you are not satisfied with the generated content, we'd greatly appreciate any feedback in the comments instead.

  1. Overview — [docs] Redesign the docs site frame, palette and components touches 52 files across docs, 4242 lines added and 2709 removed.
  2. New modules — It adds 32 new files, led by plan.md.
  3. Risk — 2 files disappear here. Anything still importing them breaks at build time.

9306944 · comment /flyover to refresh this for the latest commits · flyovers

@coderabbitai

coderabbitai Bot commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Review Change StackReview Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Advanced

Run ID: 05277f0d-51c2-45f7-ab6d-bd96abaafc29

📥 Commits

Reviewing files that changed from the base of the PR and between 8c429b5 and 8feb573.

📒 Files selected for processing (7)
  • docs/src/css/navbar.css
  • docs/src/theme/Navbar/ColorModeToggle/index.tsx
  • docs/src/theme/Navbar/ColorModeToggle/styles.module.css
  • docs/src/theme/Navbar/Content/index.tsx
  • docs/src/theme/Navbar/Content/styles.module.css
  • docs/src/theme/Navbar/MobileSidebar/Header/index.tsx
  • docs/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx
🚧 Files skipped from review as they are similar to previous changes (2)
  • docs/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx
  • docs/src/css/navbar.css

Included review availability: Your plan provides up to 8 included reviews per hour; 6 remain after this review.


📝 Summary

Summary by CodeRabbit

  • New Features

    • Redesigned documentation layout with responsive sidebars, section navigation, table of contents, search, roadmap filtering, and improved 404 pages.
    • Added changelog navigation with up to 20 recent releases.
    • Added a redesigned footer with product, company, legal, and community links.
    • Added responsive tables, API method badges, improved media embeds, and live GitHub star counts.
  • Bug Fixes

    • Stream embeds now recover from loading errors and timeouts instead of leaving skeletons visible.
  • Style

    • Updated typography, navigation, cards, roadmap pages, search, and dark-mode styling across the documentation site.

Walkthrough

The documentation site is reorganized around a shared sidebar layout, a new navbar and footer, modular design tokens and styles, updated changelog and roadmap pages, redesigned content components, and improved Stream embed loading behavior.

Changes

Documentation redesign

Layer / File(s) Summary
Configuration and design tokens
docs/docusaurus.config.ts, docs/src/css/custom.css, docs/src/css/tokens.css
The site configuration now defines footer socials, footer columns, release navigation, active paths, and responsive theme tokens.
Shared shell and navigation
docs/src/components/*, docs/src/theme/Navbar/*, docs/src/theme/Footer/*, docs/src/theme/TOC/*, docs/src/theme/NotFound/*, docs/src/utils/navbarCtas.ts
Docs pages use a shared sidebar shell, section rail, single-row navbar, mobile menu, custom footer, table of contents, and framed 404 page.
Content, media, and search presentation
docs/src/css/api.css, docs/src/css/content.css, docs/src/css/media.css, docs/src/css/search.css, docs/src/css/sidebar.css, docs/src/css/typography.css, docs/src/theme/DocCard/*, docs/src/theme/MDXComponents.tsx, docs/src/components/CustomDocCard.tsx
The site adds modular styling for content, API methods, media, search, typography, tables, and responsive cards. Custom card examples and documentation are removed.
Changelog layout and rendering
docs/src/theme/Blog*, docs/src/css/changelog.css, docs/src/utils/formatDate.ts
The changelog uses the shared frame, release sidebar, shared date formatting, updated post cards, version chips, and a custom tag-posts page.
Roadmap sections and filtering
docs/src/pages/roadmap.tsx, docs/src/pages/roadmap.module.css
The roadmap uses shared navigation, anchored status sections, category filtering, visible-item counts, formatted dates, and neutral or colored labels.
Stream embed loading
docs/src/clientModules/streamSkeleton.ts
Stream embeds use SDK readiness events when available, iframe loading otherwise, and resolve loading state after errors or eight seconds.

Priority: ➖ Normal

Estimated code review effort: 4 (Complex) | ~60 minutes

Merge Risk: 🔵 Low · up to 8feb5

When the Stream SDK is delayed or unavailable, a loaded embedded video can remain hidden behind its loading placeholder for up to eight seconds. This is a bounded presentation issue but should be accepted knowingly or fixed before merge.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 33.33% which is insufficient. The required threshold is 60.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 54 functions across 28 files. (3 skipped:… Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main changes: redesigning the documentation site frame, palette, and components.
Description check ✅ Passed The description is detailed and directly explains the documentation redesign, component changes, responsive behavior, fixes, and validation performed.
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.
Full details: Docstring Coverage

Explanation

Docstring coverage is 33.33% which is insufficient. The required threshold is 60.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 54 functions across 28 files. (3 skipped: 3 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

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.

@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


ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Advanced

Run ID: ea312725-9913-452e-bc56-6d050cdcef75

📥 Commits

Reviewing files that changed from the base of the PR and between e9335c7 and 09ab0b9.

📒 Files selected for processing (52)
  • docs/design/docs-redesign/plan.md
  • docs/docusaurus.config.ts
  • docs/src/clientModules/streamSkeleton.ts
  • docs/src/components/CARD_ICON_USAGE.md
  • docs/src/components/CustomCardExample.mdx
  • docs/src/components/CustomDocCard.tsx
  • docs/src/components/SectionRail/index.tsx
  • docs/src/components/SidebarShell/index.tsx
  • docs/src/components/SidebarShell/styles.module.css
  • docs/src/css/api.css
  • docs/src/css/changelog.css
  • docs/src/css/content.css
  • docs/src/css/custom.css
  • docs/src/css/footer.css
  • docs/src/css/media.css
  • docs/src/css/navbar.css
  • docs/src/css/search.css
  • docs/src/css/sidebar.css
  • docs/src/css/tokens.css
  • docs/src/css/typography.css
  • docs/src/pages/roadmap.module.css
  • docs/src/pages/roadmap.tsx
  • docs/src/theme/BackToTopButton/index.tsx
  • docs/src/theme/BlogLayout/index.tsx
  • docs/src/theme/BlogListPage/styles.module.css
  • docs/src/theme/BlogPostItem/index.tsx
  • docs/src/theme/BlogPostItem/styles.module.css
  • docs/src/theme/BlogSidebar/Desktop/index.tsx
  • docs/src/theme/BlogSidebar/Desktop/styles.module.css
  • docs/src/theme/BlogTagsPostsPage/index.tsx
  • docs/src/theme/BlogTagsPostsPage/styles.module.css
  • docs/src/theme/DocCard/index.tsx
  • docs/src/theme/DocCard/styles.module.css
  • docs/src/theme/DocCardList/index.tsx
  • docs/src/theme/DocCardList/styles.module.css
  • docs/src/theme/DocSidebar/Desktop/Content/index.tsx
  • docs/src/theme/DocSidebar/Desktop/Content/styles.module.css
  • docs/src/theme/Footer/index.tsx
  • docs/src/theme/Footer/styles.module.css
  • docs/src/theme/Icon/Copy/index.tsx
  • docs/src/theme/Icon/Menu/index.tsx
  • docs/src/theme/MDXComponents.tsx
  • docs/src/theme/Navbar/Content/index.tsx
  • docs/src/theme/Navbar/Content/styles.module.css
  • docs/src/theme/Navbar/Layout/index.tsx
  • docs/src/theme/Navbar/MobileSidebar/PrimaryMenu/index.tsx
  • docs/src/theme/NotFound/Content/index.tsx
  • docs/src/theme/NotFound/Content/styles.module.css
  • docs/src/theme/TOC/index.tsx
  • docs/src/theme/TOC/styles.module.css
  • docs/src/utils/formatDate.ts
  • docs/src/utils/navbarCtas.ts
💤 Files with no reviewable changes (2)
  • docs/src/components/CustomCardExample.mdx
  • docs/src/components/CARD_ICON_USAGE.md

Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review.

Comment thread docs/src/clientModules/streamSkeleton.ts
Comment thread docs/src/css/navbar.css
…ette

tokens.css owns every colour and frame measurement (light + derived dark);
typography, navbar, sidebar, content, media, search, changelog and api each
get their own file. Drops the invalid values, the :global() rules that never
applied, and the hashed module class selectors.
…ebar

The section links leave the second navbar row and render as menu rows above
the page sidebar (SectionRail, mounted in the ejected DocSidebar content).
SidebarShell gives non-docs pages the same sidebar + main frame. The TOC gets
an "On this page" title. Reference/Self-host/Enterprise get activeBasePath so
the rail highlights on every page of a section.
BlogLayout is ejected into SidebarShell; BlogSidebar/Desktop lists the latest
releases (title + date) under the rail. List rows take the 152px meta column,
mono version chip and arrow Read more from the design.
Status links jump to the sections; Category links filter the cards. Cards
drop the hover lift and coloured labels, dates read '22 August 2026', and
each section header shows its count.
Main column padding is a flat 56px (the row/col pair cancels out), the
search field is 260x32 border-box, a lone Next card spans the column, a
group's pages sit flush with their label, list media sits 16px above its
summary, and filter buttons keep the 13px row size.
Changelog entry pages no longer render the TOC block; the column-width
override is scoped to the layout row so API request/response panels keep
their split; the mobile header uses the navbar padding variable so the
search box aligns with the edge; roadmap anchors clear the fixed header;
the shell keeps top padding on mobile; <Video> is framed for any host;
static roadmap data is derived at module scope.
An ejected Footer renders the logo, X / LinkedIn / GitHub / Slack, four link
columns (Product, Deploy, Company, Legal) from themeConfig.footer, and a
copyright row. On pages with a sidebar it is offset by the sidebar width and
carries the sidebar's rule so the column reads as one. The GitHub and Slack
icons leave the header and the hamburger menu.
A system / light / dark segmented control in the footer's bottom row,
driven by useColorMode's colorModeChoice; the header's toggle is gone.
The page title, TOC and first rail row share y=80; the header CTAs end on
the reading column's right edge. Small laptops (997-1200px) get a 240px
sidebar, 200px TOC and 32px gutters; tablets get 32px gutters in the header,
content and footer, and the footer keeps four columns; the version pill
stays visible beside the logo on mobile; roadmap card titles and dates
stack on phones.

@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: 1


ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Advanced

Run ID: a02b53a8-def8-471f-a4c3-03c6b3e1d241

📥 Commits

Reviewing files that changed from the base of the PR and between 09ab0b9 and 7f3a42e.

📒 Files selected for processing (3)
  • docs/src/clientModules/streamSkeleton.ts
  • docs/src/css/navbar.css
  • docs/src/theme/Navbar/Content/styles.module.css

Included review availability: Your plan provides up to 8 included reviews per hour; 6 remain after this review.

Comment thread docs/src/clientModules/streamSkeleton.ts
@ashrafchowdury

Copy link
Copy Markdown
Contributor Author

The preview is not working normally as usual

@ashrafchowdury
ashrafchowdury merged commit 20c578a into main Sep 18, 2026
9 checks passed
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.

2 participants