release: v1.7.4 — Engines/Library/Developer/Settings redesign + mobile responsiveness#49
Merged
Conversation
…reen redesign work-in-progress
Engines: - Replace "recommended" with per-card green/amber/red hardware-fit marks - Merge hardware/selector + active-engine status into one panel with a run-state light - Drop the 6 awareness-only (coming-soon) catalog entries; list only installable engines - Fix the duplicate Add-engine button and the hardware-row misalignment Filesystem: - /api/v1/fs/browse is now local-only (isLocalRequest, matching /engines/scan) and no longer home-confined; adds a Windows "This PC" drive list so any drive is reachable Models -> Library: - Column-aligned rows; quiet capability chips (loud color reserved for problems) - One consistent action cluster: orange Load/Eject, settings, kebab - Multi-quant models fold into one row with a quant dropdown - Folder management moved to a dialog with a real folder picker (replaces paste-a-path) - Name search + facet-aware filter chips
Developer — one job (connect an outside app): - Connection panel (server URL + API keys), a card grid of one-command CLI setups, a collapsed API reference (public /v1/* only; internal /api/v1/* dropped) - Remove the paused Cloud Deploy card - Move Tool permissions to Settings (extracted to screens/settings/ToolPermissionsSection.tsx) Settings — flat 15-section scroll -> two-pane, 5 categories: - Left rail: General, Models & loading, Tools & safety, Network & sharing, System - Expert knobs (GPU layers, VRAM headroom, token caps) demoted into an Advanced reveal - One sticky dirty-aware Save bar for daemon settings (Personalization + HF token keep their own) - ComfyUI relocated under Network & sharing Folder/file picker (shared by the model-folder + add-engine dialogs): - Editable address bar: paste/type an absolute path + Enter/Go, alongside click-to-browse
Make every screen usable at phone-portrait widths without touching the desktop/landscape layout — all changes are md:/sm:-gated. - Chat: the conversation sidebar becomes an off-canvas drawer below md (a hamburger in the header opens it, a backdrop dismisses it) so the thread gets the full width instead of ~175px; the header reflows (context meter and agent chip hidden, model menu capped) to fit 375px; tighter padding. - Models/Library: the six-column table becomes stacked cards below md, so the orange Load button is on-screen instead of scrolled ~350px off the right. - Settings: the two-pane rail stacks into a horizontal tab strip (the pattern Customize already uses); theme + personalization rows wrap so their controls aren't clipped. - Agent/Skill edit: the header actions (Reset/Cancel/Save) wrap instead of clipping the Save button. - New shared useIsDesktop() hook (matchMedia at the 768px md line). Thinking control left in the chat header per request — local engines only support thinking fully on/off (reasoning_budget 0/-1), not a graduated token budget, so a real "amount" slider isn't backable.
Follow-up polish pass (static audit + live sweep at 375px and 320px) so mobile matches the desktop bar: no spill, no abrupt overflow, no odd paddings. Desktop is unchanged — every change is sm:/md:-gated or only bites below the max-w cap. - Dialogs: the shared DialogContent/AlertDialogContent were w-full with no gutter, so every dialog rendered flush edge-to-edge on phones. Now w-[calc(100%-2rem)] max-w-md → a 16px side gutter on mobile, still capped at max-w-md on desktop. DialogFooter/AlertDialogFooter gain flex-wrap so multi-button footers wrap. - Discover tab: the horizontal split-pane (fixed ≥260px list + detail) crushed the detail pane to ~105px on mobile. It now stacks (list over detail) below md; the fixed width + resize handle stay desktop-only. - HF repo card: the repo-name header used an inline-flex that defeated `truncate` (long names clipped with no ellipsis) — restructured to truncate cleanly; long inline <code> now breaks instead of clipping. - Padding: Models/Engines/Developer/Customize dropped to px-4 md:px-6, matching Settings/Chat instead of a heavier px-6 on phones. - Chat: user message bubble gains break-words (long URLs/paths no longer spill the bubble); the tool-approval banner aligns to the composer gutter (mx-3 md:mx-8). - Engines: the "Running now" / build-picker dropdown triggers become full-width and shrinkable on mobile (min-w only bites at md+), so they can't force overflow at 320px. - ScreenHeader stacks (title over actions) below sm; GpuPicker select can shrink.
…+ mobile responsiveness
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
Test plan
tsc+ web build clean