feat: redesign the desktop interface as the Workbench
MergedOpened by MelanX on
Original description
By MelanX · October 25, 2026What changes
Shell and navigation
- Three columns: instances and servers on the left, the page in the middle, a column of cards on the right. Narrow windows turn the side columns into drawers.
- Home with running, attention, resume and activity cards, plus a right column with storage counts, cache usage and tips.
- Host list cards with a state strip, a state square, problem badge, favorite star and a quick view button.
- Host pages with a header band, a status stamp (Running, Needs fix, ...), chips, an editable issue link and keyboard-reachable tabs. Split panes keep their model.
Host pages
- Run card, linked servers, report card (copyable summary), diagnostic bundle card and storage card in the side column.
- Case tab: steps, a note and the reproduced count. Stored in the organization file and available as
ephervex instance case. - Mods: one table with a filter, "Add jars" and an "Add mods" dialog that holds the catalog browser.
- Logs: a dark console with level chips and counts, search, a follow button and tinted error rows.
- Diagnostics: a result banner, problem cards with the likely cause called out, Java runtime cards, a "valid, customized" table and a checked list.
- Quick view: a slide-over (or fullscreen) of any host's surfaces, opened from a list card or the Run card, without changing the page underneath.
- "What happened": a bounded per-host history (ADR 0058) shown as a timeline in the Case tab and listed by
ephervex instance case <id> history.
Dialogs and Settings
- New Instance and New Server follow the reference: segmented loader and storage choices, an optional linked server (port, accounts, server pack), delete with two cards.
- Settings has a category rail, grouped cards and a draft bar for unsaved changes. Includes a default server port and a default account mode for linked servers.
Themes and icons
- Workbench is the built-in look, in a light and a dark palette (ADR 0057). Light is the default, Dark is selectable, and
lightanddarkstay valid in configuration files and as a theme file'sparent. - The seasonal themes (Halloween, Christmas, Pride Month, April Fools) are back on the new look and stand in for the chosen built-in theme during their season (ADR 0049). Settings > General > Seasonal themes turns them off and is offered only while a season is on.
SEASONS_THEME=<name>previews one. - The interface icons are redrawn in a whiteboard marker style: round, slightly bowed strokes in one theme color, 24-unit viewBox, stroke 2.4.
- Fonts: Pixelify Sans, Space Grotesk and IBM Plex Mono are bundled and listed in the licenses.
Notes for review
- Quick view fullscreen shows the normal surfaces at full width, not the reference's two-column composition.
- A client run or server run that outlives the launcher's process records its start but not its end in the history (documented in ADR 0058).
- The Minecraft defaults rows build on #635: text and editor columns from about 780 px with the editor against a fixed Reset slot (disabled when nothing is overridden), and two columns of rows side by side on very wide pages. The Settings rebuild restyles the borders.
mainwas merged in twice while this was in progress (sign-in code dialog, Minecraft split rows, server statistics); those features are mounted in the new shell.- Not visually signed off yet; screenshots from the reference were compared during development.
Checks
cargo fmt --all --check, cargo clippy --workspace --all-targets -- -D warnings and cargo test --workspace pass locally.
🤖 Generated with Claude Code (opens in a new tab)