Skip to content

docs: update docs home#948

Merged
necatiozmen merged 9 commits into
mainfrom
update-docs-home
Jan 15, 2026
Merged

docs: update docs home#948
necatiozmen merged 9 commits into
mainfrom
update-docs-home

Conversation

@necatiozmen

@necatiozmen necatiozmen commented Jan 15, 2026

Copy link
Copy Markdown
Member

PR Checklist

Please check if your PR fulfills the following requirements:

Bugs / Features

What is the current behavior?

What is the new behavior?

fixes (issue)

Notes for reviewers


Summary by cubic

Adds a dedicated Docs Home at /docs/home with a centered hero, quick-start links, and a feature showcase. Updates navigation and styles to surface the new home and improve docs readability.

  • New Features
    • New docs page (home.md) rendering DocsHome: hero, TypeScript code example, feature badges, VoltOps FeatureShowcase, and “Get Started” links.
    • Added “Home” to the docs sidebar and both desktop/mobile doc nav; adjusted tab matching so “VoltAgent” excludes /docs/home and renamed “VoltAgent Docs” to “VoltAgent”.
    • FeatureShowcase tweaks: stronger border utilities, smaller icons, and updated footer text for Guardrails/Deployment.
    • Styling updates: docs-home layout (hide sidebar, full-width, black background, centered content), improved sidebar typography, and refreshed navbar/brand icon styles.

Written for commit 20a0dee. Summary will update on new commits.

Summary by CodeRabbit

  • New Features

    • Added a Home docs page with hero, feature sections, code example, quick-start links, and a new Home nav tab (desktop + mobile).
  • Style

    • Sidebar labels changed from ALL CAPS to Title Case with adjusted typography.
    • Updated nav icon sizing, border, and active-tab behavior; refined feature showcase borders, spacing, and layout.
    • Docs Home page receives full-width layout and centered hero styling.
  • Documentation

    • Updated descriptive text for guardrails and deployment examples.

✏️ Tip: You can customize this high-level summary in your review settings.

@changeset-bot

changeset-bot Bot commented Jan 15, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 20a0dee

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@coderabbitai

coderabbitai Bot commented Jan 15, 2026

Copy link
Copy Markdown
Contributor

Caution

Review failed

The pull request is closed.

Note

Other AI code review bot(s) detected

CodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review.

📝 Walkthrough

Walkthrough

Adds a new docs homepage component and route, integrates it into the sidebar and docs navbar (per-tab match functions), introduces DocsHome UI and styles, adjusts feature-showcase text and styling, and applies extensive docs-home-specific CSS (including a duplicated block).

Changes

Cohort / File(s) Summary
Docs page & Sidebar
website/docs/home.md, website/sidebars.ts
New home docs page rendering DocsHome; inserted home entry at the start of the docs sidebar.
DocsHome component
website/src/components/docs-widgets/DocsHome.tsx
New DocsHome React component (default export) with hero, features, showcase, code example, and quick links.
Navbar / Doc-navbar
website/src/components/doc-navbar/index.tsx, website/src/components/navbar/index.tsx
Added Home tab; migrated tab matching to per-tab match functions; adjusted VoltAgent tab label/text and mobile menu entries.
Navbar styles
website/src/components/navbar/styles.module.css
Increased docs logo icon size, added 1px border, circular radius and padding.
Feature showcase
website/src/components/feature-showcase/index.tsx, website/src/components/feature-showcase/mock-data.ts
Styling/className tweaks (force borders, icon sizing, minor semantic change); updated two footerText strings in mock data.
Global CSS / Docs-home styles
website/src/css/custom.css
Sidebar typography changed (ALL CAPS → Title Case, weights/sizes/spacing adjusted); extensive new docs-home layout and component styles added; duplicate docs-home style block appended.

Sequence Diagram(s)

sequenceDiagram
  participant User
  participant Browser
  participant NavBar
  participant Sidebar
  participant DocsHome
  User->>Browser: Navigate to /docs/home
  Browser->>NavBar: request active tab for current path
  NavBar->>NavBar: evaluate per-tab match functions (including Home)
  NavBar-->>Browser: render nav with Home active
  Browser->>Sidebar: render page (docs-home CSS may hide sidebar)
  Browser->>DocsHome: mount component
  DocsHome-->>Browser: render hero, features, showcase, links
  Browser-->>User: display docs home page
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Poem

🐰 I hopped to a page with a bright hero dome,
New links and a showcase to call my own home.
Nav learned to match paths and the sidebar grew shy,
I nibble on docs while the features pass by.
✨ Hop, build, ship — little rabbit says “try!”

🚥 Pre-merge checks | ✅ 1 | ❌ 2
❌ Failed checks (1 warning, 1 inconclusive)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive The title 'docs: update docs home' is vague and generic, using broad language like 'update' that doesn't clearly convey the main changes (adding a new dedicated docs home page with hero, showcase, and navigation updates). Consider a more specific title such as 'docs: add dedicated docs home page with hero and feature showcase' to better communicate the primary change.
✅ Passed checks (1 passed)
Check name Status Explanation
Description check ✅ Passed The description includes a mostly-empty checklist template with unchecked items and largely unfilled sections; however, an auto-generated cubic summary provides comprehensive detail about the new docs home, navigation updates, styling changes, and feature showcase modifications.

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



📜 Recent review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 93b30d3 and 20a0dee.

📒 Files selected for processing (1)
  • website/docs/home.md

✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.


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

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jan 15, 2026

Copy link
Copy Markdown

Deploying voltagent with  Cloudflare Pages  Cloudflare Pages

Latest commit: 20a0dee
Status:⚡️  Build in progress...

View logs

@ghost

This comment has been minimized.

@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

🤖 Fix all issues with AI agents
In `@website/src/components/docs-widgets/DocsHome.tsx`:
- Around line 131-133: The full-width breakout div in the DocsHome component
using the left-1/2 right-1/2 -ml-[50vw] -mr-[50vw] w-screen pattern can produce
horizontal scroll; fix by ensuring overflow-x is hidden at the root so the
breakout cannot create a scrollbar—add overflow-x: hidden to the global layout
or body (or the nearest top-level wrapper that contains <FeatureShowcase />) so
the full-width technique won’t cause horizontal overflow.

In `@website/src/components/feature-showcase/mock-data.ts`:
- Line 308: Fix the user-facing string in mock-data by updating the footerText
value in website/src/components/feature-showcase/mock-data.ts (the footerText
property) to include a space after the comma so "one click,no infrastructure to
manage" becomes "one click, no infrastructure to manage".
🧹 Nitpick comments (2)
website/src/components/doc-navbar/index.tsx (1)

87-89: Consider extracting inline Tailwind styles to CSS module.

The brand icon uses inline Tailwind classes while the rest of the component uses CSS module styles. For consistency, consider moving these styles to styles.module.css.

♻️ Suggested refactor
-            <span className="flex items-center justify-center w-8 h-8 rounded-full border-2 border-solid border-[`#00d992`] bg-[rgba(0,217,146,0.08)]">
-              <BoltIcon className="w-4 h-4 text-[`#00d992`]" />
+            <span className={styles.brandIconWrapper}>
+              <BoltIcon className={styles.brandIcon} />
             </span>

Then add corresponding styles to the CSS module.

website/src/components/docs-widgets/DocsHome.tsx (1)

160-180: Consider making the entire card clickable for better UX.

Currently, only the inner <Link> is clickable while the outer <div> has the card styling. Users might click on the card padding/border area expecting navigation.

♻️ Suggested improvement
           {quickLinks.map((link) => (
-            <div
+            <Link
+              to={link.href}
               key={link.title}
-              className="group p-3 md:p-4 rounded-lg !border !border-solid !border-zinc-800 transition-all duration-200"
+              className="group p-3 md:p-4 rounded-lg !border !border-solid !border-zinc-800 transition-all duration-200 no-underline hover:no-underline hover:border-zinc-700"
             >
               <div className="flex items-start gap-2 md:gap-3">
                 <link.icon className="w-4 h-4 md:w-5 md:h-5 text-[`#00d992`] flex-shrink-0 mt-0.5" />
-                <Link
-                  to={link.href}
-                  className="text-white font-medium hover:text-emerald-400 transition-colors no-underline hover:no-underline"
-                >
-                  <div className="flex text-white flex-col">
-                    <span className="text-sm md:text-base">{link.title}</span>
-                    <span className="text-[`#b2b2b2`] text-xs md:text-sm mt-1">
-                      {link.description}
-                    </span>
-                  </div>
-                </Link>
+                <div className="flex text-white flex-col">
+                  <span className="text-sm md:text-base font-medium group-hover:text-emerald-400 transition-colors">{link.title}</span>
+                  <span className="text-[`#b2b2b2`] text-xs md:text-sm mt-1">
+                    {link.description}
+                  </span>
+                </div>
               </div>
-            </div>
+            </Link>
           ))}
📜 Review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between fcb336d and 7223308.

📒 Files selected for processing (9)
  • website/docs/home.md
  • website/sidebars.ts
  • website/src/components/doc-navbar/index.tsx
  • website/src/components/docs-widgets/DocsHome.tsx
  • website/src/components/feature-showcase/index.tsx
  • website/src/components/feature-showcase/mock-data.ts
  • website/src/components/navbar/index.tsx
  • website/src/components/navbar/styles.module.css
  • website/src/css/custom.css
🧰 Additional context used
📓 Path-based instructions (1)
**/*.ts

📄 CodeRabbit inference engine (AGENTS.md)

**/*.ts: Maintain type safety in TypeScript-first codebase
Never use JSON.stringify; use the safeStringify function instead, imported from @voltagent/internal

Files:

  • website/sidebars.ts
  • website/src/components/feature-showcase/mock-data.ts
🧬 Code graph analysis (2)
website/src/components/docs-widgets/DocsHome.tsx (2)
website/src/components/ui/dot-pattern.tsx (1)
  • DotPattern (10-63)
website/src/components/feature-showcase/index.tsx (1)
  • FeatureShowcase (31-281)
website/src/components/navbar/index.tsx (2)
website/src/theme/Navbar/index.js (1)
  • location (8-8)
website/src/theme/TOC/index.js (1)
  • location (11-11)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (9)
  • GitHub Check: cubic · AI code reviewer
  • GitHub Check: Test server-core
  • GitHub Check: Test core
  • GitHub Check: Test cli
  • GitHub Check: Build (Node 22)
  • GitHub Check: Build (Node 20)
  • GitHub Check: Build (Node 24)
  • GitHub Check: Lint (Node 22)
  • GitHub Check: Cloudflare Pages
🔇 Additional comments (18)
website/src/components/navbar/styles.module.css (1)

371-379: Styling updates look good.

The increased icon size with border styling creates better visual hierarchy. Minor nit: Line 373 has trailing whitespace after 1.5rem ; but this is cosmetic.

website/src/components/navbar/index.tsx (2)

45-81: Tab configuration refactoring looks solid.

The function-based matching approach is more flexible than string prefixes and handles the new Home tab routing correctly. The VoltAgent match logic properly excludes /docs/home to prevent both tabs appearing active simultaneously.


224-226: Tab matching implementation is correct.

The call to tab.match(location.pathname) correctly invokes the function-based matching defined in the tab configuration.

website/src/components/doc-navbar/index.tsx (2)

21-31: Home tab configuration is well-implemented.

The exact path matching for the Home tab (pathname === "/docs/home/" || pathname === "/docs/home") correctly handles both trailing slash variants. The VoltAgent exclusion logic prevents multiple active states.


145-164: Mobile menu Home link addition is correct.

The new Home link follows the same pattern as existing mobile links with proper active state handling and menu close behavior.

website/src/css/custom.css (3)

4669-4686: Sidebar header styling updates are consistent.

The typography changes (font-weight: 500, capitalize text-transform, letter-spacing: 0.02em) improve readability and create a more refined visual hierarchy for the sidebar navigation.


5880-5968: Docs Home Page styling is well-structured.

The comprehensive styling for the docs home page correctly:

  • Hides the sidebar when .docs-home is present
  • Centers content with appropriate max-width
  • Handles hero section typography and button alignment
  • Uses :has() selector for contextual styling

5969-6048: No unintended CSS duplication found.

The "Docs Home Page Styles" comment appears only once in the file. While there are multiple .docs-home selectors scattered throughout the file (lines 5882–6035), the entire block at lines 5969–6048 is not accidentally duplicated. The repeated comments and similar rules (e.g., "Hide sidebar on docs home page" at both lines 5885 and 5993) use different selectors targeting distinct DOM structures, confirming this is intentional for cross-version Docusaurus compatibility.

website/docs/home.md (1)

1-11: Docs home page configuration is correct.

The frontmatter properly configures this as a landing page:

  • hide_table_of_contents: true and hide_title: true allow the DocsHome component to control the full layout
  • custom_edit_url: null appropriately hides the edit link for a component-rendered page
  • The @site import alias correctly resolves to the existing DocsHome component
website/sidebars.ts (1)

15-19: LGTM!

The new "Home" sidebar item follows Docusaurus conventions and is correctly placed at the start of the docs array for proper navigation hierarchy.

website/src/components/docs-widgets/DocsHome.tsx (3)

1-12: LGTM!

The imports are well-organized. The @ts-expect-error for the Docusaurus theme component is an acceptable pattern since @theme/CodeBlock doesn't export TypeScript types.


14-27: LGTM!

The code example is well-structured and provides a clear introduction to VoltAgent usage.


31-52: All three quick link URLs are correctly configured and properly resolve to their intended destinations.

After verifying against the documentation configuration:

  • /docs/quick-start/ — Correctly maps to the Quick Start guide (slug /quick-start in quick-start.md)
  • /recipes-and-guides/ — Correctly maps to the Recipes & Guides section (configured in docusaurus.config.ts with routeBasePath: "recipes-and-guides")
  • /tutorial/introduction/ — Correctly maps to the tutorial introduction page (introduction.tsx exists in src/pages/tutorial/)

No URL corrections are needed.

Likely an incorrect or invalid review comment.

website/src/components/feature-showcase/mock-data.ts (1)

299-299: LGTM!

The updated guardrails description is clear and accurately reflects the feature capabilities.

website/src/components/feature-showcase/index.tsx (4)

72-77: LGTM!

The !important modifiers on border classes are a reasonable approach for ensuring consistent styling in Docusaurus's themed environment where CSS specificity can be challenging.


114-117: LGTM!

Good responsive design adjustment — smaller icons on mobile (w-3.5 h-3.5) improve the tab bar layout on constrained screens while maintaining larger icons (md:w-5 md:h-5) on desktop.


133-140: LGTM!

Changing from <p> to <span> is semantically correct here since this text is inline content within a flex container, not a standalone paragraph.


206-206: Good fix for the CSS class typo.

Changed bg:black to bg-black — the colon was incorrect syntax for Tailwind classes.

✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.

Comment on lines +131 to +133
<div className="my-6 md:my-12 relative left-1/2 right-1/2 -ml-[50vw] -mr-[50vw] w-screen max-w-none px-2 md:px-8">
<FeatureShowcase />
</div>

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.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

cat -n website/src/components/docs-widgets/DocsHome.tsx | head -150

Repository: VoltAgent/voltagent

Length of output: 7228


🏁 Script executed:

rg -n "overflow-x|overflow:" website/src/components/docs-widgets/ -A 1

Repository: VoltAgent/voltagent

Length of output: 386


🏁 Script executed:

fd -e css -e scss -e ts -e tsx website/ -x rg -l "overflow-x.*hidden|overflow.*hidden" {}

Repository: VoltAgent/voltagent

Length of output: 400


🏁 Script executed:

# Check the root HTML/body level styles
find website -name "*.css" -o -name "*.scss" | head -20 | xargs rg -n "overflow" -C 2

Repository: VoltAgent/voltagent

Length of output: 6822


Full-width breakout technique may cause horizontal overflow.

The left-1/2 right-1/2 -ml-[50vw] -mr-[50vw] w-screen pattern on line 131 can create horizontal scrollbars if overflow is not handled at the page or body level. Ensure the root layout or document body has overflow-x: hidden to prevent this UX issue.

🤖 Prompt for AI Agents
In `@website/src/components/docs-widgets/DocsHome.tsx` around lines 131 - 133, The
full-width breakout div in the DocsHome component using the left-1/2 right-1/2
-ml-[50vw] -mr-[50vw] w-screen pattern can produce horizontal scroll; fix by
ensuring overflow-x is hidden at the root so the breakout cannot create a
scrollbar—add overflow-x: hidden to the global layout or body (or the nearest
top-level wrapper that contains <FeatureShowcase />) so the full-width technique
won’t cause horizontal overflow.

Comment thread website/src/components/feature-showcase/mock-data.ts Outdated

@cubic-dev-ai cubic-dev-ai 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.

1 issue found across 9 files

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="website/src/components/feature-showcase/mock-data.ts">

<violation number="1" location="website/src/components/feature-showcase/mock-data.ts:308">
P3: Add the missing space after the comma so the footer text reads naturally ("one click, no infrastructure").</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Comment thread website/src/components/feature-showcase/mock-data.ts Outdated
@necatiozmen
necatiozmen merged commit 64f9c8c into main Jan 15, 2026
20 of 22 checks passed
@coderabbitai coderabbitai Bot mentioned this pull request Feb 4, 2026
5 tasks
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