Repository navigation
feat(hub-ui): add a setting to expand the group sidebar - #480
Merged
Merged
Conversation
Show each tool's title next to its icon in the group sidebar when the new expandGroupSidebar setting is on. It is off by default. Refs nuxt/devtools#1147
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
👁️🗨️ Review this pull request with grouped, summarized diffs at: raw result💭 analyzed by {
"headSha": "3e913be442af07bbf654bc3215de21dacd74be2f",
"result": {
"overallSummary": "Reintroduces the Nuxt DevTools v3 \\\"expand sidebar\\\" option, missing in v4, as a new hub-ui setting. When `expandGroupSidebar` is on, the group sidebar widens and shows each tool's title next to its icon instead of relying on hover tooltips; it's off by default so current behavior is unchanged. The change is split into the core implementation (types, defaults, component, settings toggle), new Storybook stories covering the expanded/overflow states, and the i18n strings for the toggle across all locales.",
"groups": [
{
"key": "feature",
"label": "Expand group sidebar setting",
"summary": "Adds the `expandGroupSidebar` setting (type, default value) and wires it into the group sidebar component, which now renders a wider rail with tool titles next to icons when enabled, plus a new toggle in Settings → Appearance.",
"category": "ui",
"filePaths": [
"packages/hub-ui/src/client/types.ts",
"packages/hub-ui/src/client/state/settings-defaults.ts",
"packages/hub-ui/src/client/components/dock/DockGroupSidebar.vue",
"packages/hub-ui/src/client/components/views-builtin/SettingsAppearance.vue"
],
"fileNotes": [
{
"path": "packages/hub-ui/src/client/components/dock/DockGroupSidebar.vue",
"text": "Row heights stay `h-8` in both modes so the existing overflow/\"show more\" capacity math is unaffected; only widths, alignment and an extra label span change."
}
]
},
{
"key": "stories",
"label": "Storybook stories",
"summary": "New `Expanded` and `ExpandedOverflow` stories to visually cover the new expanded sidebar mode and its overflow behavior.",
"category": "tests",
"filePaths": [
"packages/hub-ui/src/client/components/dock/DockGroupSidebar.stories.ts"
]
},
{
"key": "i18n",
"label": "Locale strings",
"summary": "Adds the two new `appearance.expandSidebar*` translation keys to all 10 supported locales for the new toggle.",
"category": "i18n",
"filePaths": [
"packages/hub-ui/src/client/i18n/locales/de.json",
"packages/hub-ui/src/client/i18n/locales/en.json",
"packages/hub-ui/src/client/i18n/locales/es.json",
"packages/hub-ui/src/client/i18n/locales/fr.json",
"packages/hub-ui/src/client/i18n/locales/ja.json",
"packages/hub-ui/src/client/i18n/locales/ko.json",
"packages/hub-ui/src/client/i18n/locales/pt-BR.json",
"packages/hub-ui/src/client/i18n/locales/ru.json",
"packages/hub-ui/src/client/i18n/locales/zh-CN.json",
"packages/hub-ui/src/client/i18n/locales/zh-TW.json"
]
}
],
"schemaVersion": 1,
"source": "llm",
"generatedAt": "2026-11-02T03:56:55.986Z",
"model": "vercel-ai-gateway/anthropic/claude-sonnet-5",
"locale": "en"
}
} |
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Nuxt DevTools v3 had an "Expand sidebar" option, and v4 lost it. Without it, users must hover over each icon in the group sidebar to find a tool (nuxt/devtools#1147).
This PR adds an Expand group sidebar setting under Settings → Appearance in hub-ui. When the setting is on, the group sidebar grows from
w-12tow-44and shows each tool's title next to its icon. Any devframe that renders in a group gets this, not only Nuxt. The setting is off by default, so the current icon-only sidebar does not change.expandGroupSidebaronDevframeDocksUserSettings. Its default (false) lives inHUB_UI_SETTINGS_DEFAULTS, so "reset all settings" turns it off again.DockGroupSidebar.vue: in expanded mode, the group header, each tool row and the "Show more" row show a label. Badges move inline at the end of the row. Rows stayh-8, so the code that decides how many tools fit before "Show more" works the same in both modes. Tooltips stay on, so descriptions and cut-off titles are still readable.ExpandedandExpandedOverflowstories.The issue also asks for a bigger click area on the docked icon and for font size and color contrast rules. This PR does not cover those.
Refs nuxt/devtools#1147
Visual changes
Storybook, dark theme. The warning-triangle icons appear because Iconify icons could not load in the capture sandbox. They are not part of the change.
Dock/Group/Sidebar→DefaultDock/Group/Sidebar→ExpandedExpanded with overflow, and the new toggle:
Verification
pnpm vitest run packages/hub-ui: 16 files, 163 tests pass (this includes the i18n test that checks all locale files have the same keys).pnpm -C packages/hub-ui typecheck: passes.pnpm lint: passes.pnpm -C packages/hub-ui build:css: the shadow-root stylesheet contains the new classes (w-44,items-stretch,min-w-0).Views/Builtin/Settings→Embeddedupdates the setting.pnpm knipfails withUnused files: starter/playground/single/main.ts. The same failure is onmain(this branch's base equalsorigin/main), and this PR does not touchstarter/.pnpm test(the full suite) had 26 failures in other packages (tests/exports,@devframes/vite,@devframes/hubinitiate, shiki, starter) while Storybook was also running. Each of those files passes when run alone. Some loopback/port tests indevframefail in my sandbox because of its network setup.This PR was written with help from an AI agent (Claude).