fix(docs): wide-table layout — stop clipping, fit backend table - #1905
Conversation
The custom theme set `.vp-doc table { overflow: hidden }` to clip its
rounded corners, which also overrode VitePress's default `overflow-x: auto`
— so any table wider than the content column was clipped with no way to
scroll to the hidden columns (visible on the storage-backends table). Switch
to `overflow-x: auto` so wide tables scroll, keeping the rounded corners.
Also shorten the storage-backends table's two capability headers
(Namespace isolation -> Namespaces, Lexical search -> Lexical) so the table
fits the content column without needing the scrollbar.
There was a problem hiding this comment.
Code Review
This pull request enables horizontal scrolling for wide tables in the documentation by setting display: block and overflow-x: auto on tables, and simplifies table headers in the configuration guide. The feedback suggests updating the custom scrollbar CSS to include height: 6px; so that the horizontal scrollbar matches the customized thin appearance of the vertical scrollbar.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
| display: block; | ||
| /* Keep VitePress's horizontal scroll for wide tables; `overflow: hidden` | ||
| here would clip columns that don't fit the content column instead. */ | ||
| overflow-x: auto; |
There was a problem hiding this comment.
With overflow-x: auto now enabled to allow horizontal scrolling on wide tables, the horizontal scrollbar will become visible. However, the custom scrollbar styles defined at the bottom of this file (lines 200-207) only specify width: 6px; for ::-webkit-scrollbar.
In WebKit/Blink browsers, width only controls the vertical scrollbar thickness, while height controls the horizontal scrollbar thickness. Without specifying height: 6px;, the horizontal scrollbar on wide tables will render with the browser's default thick height, causing a visual inconsistency with the customized thin vertical scrollbars.
To fix this, please update the scrollbar rule at the bottom of the file as follows:
:::-webkit-scrollbar {
width: 6px;
height: 6px;
}Browser-validated the table layout across desktop (1280) and mobile (375): - Denser doc-table cell padding (8px 16px -> 8px 12px) so comparison tables fit the content column instead of needing a horizontal scrollbar. - `overflow-wrap: break-word` on table-cell code so only genuinely long values (e.g. a Postgres DSN) wrap, while short identifiers like `palace_path` keep natural column sizing and stay on one line. - Drop the redundant 'Configure with' column from the storage-backends table (each backend's connection variables are documented in full in its own subsection right below) and shorten 'Local (exact cosine)' -> 'Local (exact)'. The comparison table is now five columns and fits cleanly. Verified no clipping and no page-level horizontal overflow on the configuration, remote-server, reference (cli/mcp-tools/python-api), claude-code, and knowledge-graph pages; wide tables scroll within their own container on mobile.
Summary
Batched, browser-validated frontend fixes for wide tables in the docs.
The docs theme clipped any table wider than the content column instead of
letting it scroll — visible on the storage-backends compatibility table, whose
right-most columns were cut off and unreachable.
Root cause: the custom theme set
.vp-doc table { overflow: hidden }to clipthe rounded corners, which also overrode VitePress's default
overflow-x: auto.With overflow hidden, columns that don't fit are simply unreachable.
Changes
.vitepress/theme/style.css(site-wide):.vp-doc table→overflow-x: auto(keeps rounded corners, restoreshorizontal scroll for any wide table — fixes clipping everywhere, not just one
page).
8px 16px→8px 12px) so comparison tables fit thecontent column without a scrollbar.
overflow-wrap: break-wordon table-cell code so only genuinely long values(e.g. a Postgres DSN) wrap, while short identifiers like
palace_pathkeepnatural column sizing and stay on one line.
guide/configuration.md:Configure withcolumn from the storage-backends table(each backend's connection variables are documented in full in its own
subsection right below), shorten the capability headers, and
Local (exact cosine)→Local (exact). The comparison table is now fivecolumns and fits cleanly.
Validation (Playwright, dev server)
Measured
scrollWidth/clientWidthand page overflow, plus visual screenshots,at 1280px and 375px:
configuration, remote-server, reference (cli / mcp-tools / python-api),
claude-code, and knowledge-graph pages.
scroll at desktop; on mobile it scrolls within its own container.
reachable, never clipped.
bun run docs:build— clean, no dead links.