Skip to content

release: v1.7.4 — Engines/Library/Developer/Settings redesign + mobile responsiveness#49

Merged
mohitsoni48 merged 6 commits into
mainfrom
release/v1.7.4
Jul 7, 2026
Merged

release: v1.7.4 — Engines/Library/Developer/Settings redesign + mobile responsiveness#49
mohitsoni48 merged 6 commits into
mainfrom
release/v1.7.4

Conversation

@mohitsoni48

Copy link
Copy Markdown
Owner

Summary

  • Engines screen redesigned: hardware-fit marks (green/amber/red), grounded pros/cons per engine, merged active-engine/selector panel with a run-state traffic-light, local-only filesystem browse for "Add your own engine" (reaches the whole local FS, not just home).
  • Models → Library redesigned: column-aligned two-tier rows, multi-quant models fold into one row with a quant dropdown, folder management moved into a dedicated Folders dialog with a real folder picker, name search + facet-aware filter chips.
  • Developer + Settings redesigned: Developer narrowed to "point an outside app at this server" (Connection panel, one-command CLI cards, collapsed API reference); Settings restructured into a two-pane 5-category layout with a sticky dirty-aware Save bar; tool permissions moved to Settings; folder/file picker gained an editable address bar (paste an absolute path + Enter/Go).
  • Full mobile-responsive pass: every screen now works at mobile portrait widths (drawer nav, stacked cards, horizontal tab strips, split-pane stacking) with landscape/desktop pixel-unchanged.
  • Mobile polish pass: fixed a systemic dialog edge-flush bug (every dialog was flush to the viewport edge below 448px) at the shared Radix primitive level, plus assorted no-spill/no-overflow/consistent-padding fixes across screens.

Test plan

  • tsc + web build clean
  • Live-verified at 375px and 320px viewports (dialogs, Library cards, Settings/Developer stacking, chat drawer)
  • Desktop/landscape spot-checked unchanged after each batch (grid widths, dialog max-width, split-pane widths)
  • Opus code-reviewer pass (next step)

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.
@mohitsoni48 mohitsoni48 merged commit 38df0a8 into main Jul 7, 2026
1 check passed
@mohitsoni48 mohitsoni48 deleted the release/v1.7.4 branch July 7, 2026 04:35
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