From 9b1184e34be02c9466e28c2168316df01cb8bb73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20Bramer=20Schmidt?= Date: Fri, 17 Jul 2026 21:11:00 +0700 Subject: [PATCH 1/2] docs: give the resizable sidebar its own FEATURES.md section Issue prisma/studio#1425 asked for a resizable sidebar because long table names get cut off. The feature itself already shipped on main (drag handle with keyboard support, min/max clamping, and width persistence in local Studio UI state), but FEATURES.md only mentioned it inside the Sidebar Streams Navigation section, framed around stream names. Promote it to a dedicated Resizable Sidebar section that covers tables and streams alike. Co-Authored-By: Claude Fable 5 --- FEATURES.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/FEATURES.md b/FEATURES.md index 2acaa70e..ccd7b640 100644 --- a/FEATURES.md +++ b/FEATURES.md @@ -50,6 +50,12 @@ Users can share links into a precise Studio state, and stale params are resolved The sidebar provides schema switching and active-table navigation so users can move through large databases quickly. Table-name metadata is normalized into local TanStack DB state and queried live for responsive list rendering. +## Resizable Sidebar + +The sidebar width is user-resizable from a drag handle on its right edge, so long table and stream names stay fully readable instead of being cut off at a fixed width. +The handle also supports keyboard resizing (`ArrowLeft` / `ArrowRight`, plus `Home` / `End` for the extremes), and the width is clamped to sane minimum and maximum bounds that keep both the sidebar and the main content usable. +The chosen width is persisted in local Studio UI state, so it survives navigation and reopening Studio; the default width is unchanged until the user resizes. + ## Sidebar Table Name Search Table filtering is available inline in the Tables header, so search is there when needed without permanent UI clutter. @@ -63,7 +69,6 @@ Studio can optionally connect to a Prisma Streams server alongside the database The list reuses the same compact navigation shell as table browsing, loads live stream names from the configured Streams base URL, and disappears entirely when Studio is embedded without Streams configured. Streams also reuse the same inline filter disclosure as tables, so the `Streams` header can open an in-place search field with the same keyboard flow, real-time local filtering, and `ArrowUp` / `ArrowDown` plus `Enter` selection behavior instead of introducing a second sidebar filtering pattern. That shared hover affordance also adds a stream-list refresh button beside search, so the current Streams server can be queried again on demand without opening the field first or adding permanent chrome to the sidebar header. -The sidebar width is also user-resizable from a drag handle on its right edge, and that width is persisted in Studio UI state so wider stream names stay readable as you move around the app or reopen it later. ## Prisma WAL Table History From d7f45ffb2be7e65b4a1b02874c125a4c301216a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20Bramer=20Schmidt?= Date: Sat, 18 Jul 2026 18:42:47 +0700 Subject: [PATCH 2/2] docs: state the concrete sidebar resize bounds Co-Authored-By: Claude Fable 5 --- FEATURES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FEATURES.md b/FEATURES.md index ccd7b640..b443aad6 100644 --- a/FEATURES.md +++ b/FEATURES.md @@ -53,7 +53,7 @@ Table-name metadata is normalized into local TanStack DB state and queried live ## Resizable Sidebar The sidebar width is user-resizable from a drag handle on its right edge, so long table and stream names stay fully readable instead of being cut off at a fixed width. -The handle also supports keyboard resizing (`ArrowLeft` / `ArrowRight`, plus `Home` / `End` for the extremes), and the width is clamped to sane minimum and maximum bounds that keep both the sidebar and the main content usable. +The handle also supports keyboard resizing (`ArrowLeft` / `ArrowRight`, plus `Home` / `End` for the extremes), and the width is clamped to a 192px minimum and a 520px maximum, additionally capped at 60% of the viewport width on narrow screens, so both the sidebar and the main content stay usable. The chosen width is persisted in local Studio UI state, so it survives navigation and reopening Studio; the default width is unchanged until the user resizes. ## Sidebar Table Name Search