Skip to main content
FORGEJO ERA / PULL REQUEST #636

feat: redesign the desktop interface as the Workbench

MergedOpened by MelanX on

Original description​

By MelanX · October 25, 2026

What 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 light and dark stay valid in configuration files and as a theme file's parent.
  • 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.
  • main was 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)