Files
2026-03-30 23:06:06 -04:00

7.7 KiB

ROADMAP.md

Tactical roadmap for MangoTune. Update this when UX direction, major milestones, or technical priorities change.

Last updated: 2026-03-25 - the old Studio preview binary has been replaced with a socket-driven renderer, so the remaining roadmap is mostly renderer polish, consistent hot-reload behavior, and manual validation


Current Status

  • Dashboard-first overview is in place
  • Managed live preview works through real test apps and a companion preview renderer using a temporary preview config
  • Common appearance tuning is now surfaced up front
  • Profiles are available from the landing page
  • Studio preview scene, load, and FPS-cap controls now live in the dashboard and persist between runs
  • Studio preview now uses a socket-driven companion renderer instead of the older CLI-only shader preview
  • Dashboard preview state now auto-refreshes instead of only updating on button presses
  • Dashboard now includes one-click starter presets for minimal, competitive, balanced, and streamer-style HUD setups
  • Sidebar sections now collapse by default for the deeper areas, while search still reveals everything
  • Dashboard now also surfaces save state, validation summary, runtime detection, and quick actions in one place
  • Sidebar section opening now collapses the others so only one section stays expanded at a time
  • Dashboard now also controls preview window width/height for Studio, vkcube, and glxgears
  • Main appearance/display/behavior pages have started moving onto a custom control-deck shell instead of stock preferences-page layouts
  • Dashboard scrolling no longer accidentally tweaks nearby preview controls
  • Profiles can now be deleted from the landing page
  • The conflicts experience is now inline instead of opening a second window
  • Save is now blocked safely when validation errors exist instead of letting the user fall into a deadlock path
  • Raw Editor and Integrations now use the same custom control-deck language as the main settings pages
  • Right-aligned HUD previews now get extra width and avoid side-docking so they are less likely to disappear off-screen

Immediate Focus

1. Dashboard Coverage

  • Expand the dashboard so it covers the most common MangoHud workflows
  • Keep common metric toggles, preview controls, and visual tuning on the first screen
  • Reduce how often users need to open deep schema pages
  • Keep refining preset bundles so they feel like strong default starting points rather than generic samples
  • Keep refining the workspace/status card so validation and save-state feedback stay obvious

2. Live Preview Reliability

  • Keep improving the managed preview flow around real MangoHud processes
  • Make reload/restart behavior more explicit when a change does not hot-apply cleanly
  • Preserve useful preview preferences between runs
  • Keep tightening the studio-renderer workflow and preview-state feedback
  • Continue validating MangoHud hot-reload behavior against more real-world options and drivers
  • Keep checking whether any non-studio scenes still need reload-to-restart fallback tweaks
  • Keep refining preview docking/visibility behavior on different monitors and layouts, especially for right-edge HUD placements
  • Keep validating that all starter presets behave correctly when the preview is docked to the side

3. Navigation Simplification

  • Make the sidebar feel less intimidating
  • Re-group advanced pages more clearly
  • Keep full MangoHud coverage without dumping all complexity on first use
  • Keep tuning which sections should be collapsed/open by default as the dashboard grows

Next Milestones

Milestone A — Better Dashboard

  • Add quick metric toggles for common FPS/GPU/CPU/memory items
  • Add smarter dashboard guidance and page jump-offs
  • Improve validation and dependency handling for dashboard controls
  • Consider promoting more edge-aware controls like right/bottom gap handling into other relevant pages, not only the dashboard

Milestone B — Preview Studio

  • Expand the new dedicated preview renderer/workflow
  • Show clearer preview state: running, reloaded, restart recommended, stopped
  • Refine studio tuning UX now that renderer load/scene/FPS controls are exposed from the main app
  • Consider richer scene presets or staged load profiles
  • Unify Studio hot-reload behavior with the temp-config + signal/socket model used by the rest of previewing

Milestone C — Custom Preview Renderer

  • Evolve the new mangotune-preview Rust binary beyond the initial particle scene
  • Keep it lightweight but configurable enough to create realistic MangoHud load
  • Target dark/bright/high-motion/readability scenes
  • Default to an uncapped renderer or a very high cap, with a safe default around 500 FPS if needed

Milestone D — Full UX Polish

  • Revisit the remaining settings pages and bring them closer to the new visual direction
  • Reduce generic libadwaita-preferences feel
  • Add more helpful inline guidance for advanced features and config-layer behavior
  • Keep tightening copy, spacing, and visual hierarchy across the remaining advanced workflows
  • Replace manual MangoHud keybind text entry with real key-chord capture UX in the Keybindings page
  • Re-verify docs/MANGOHUD_OPTION_BEHAVIOR.md against upstream whenever MangoHud releases change option semantics

Longer-Term Ideas

  • Scene presets tuned for different classes of hardware
  • Better Wayland-friendly preview/window management behavior
  • Optional import/export/share flow for profile bundles
  • More guided onboarding for first-time MangoHud users

Risks / Constraints

  • A truly embedded real-time preview inside GTK may remain compositor- and platform-sensitive
  • MangoHud hot reload behavior may vary by option, so restart paths must remain first-class
  • The app still needs to preserve access to the full MangoHud option surface even while simplifying the main workflow

Change Log

  • 2026-03-22 Initial roadmap created after dashboard-first redesign and managed preview foundation
  • 2026-03-22 Added the mangotune-preview companion renderer and shifted preview work toward deeper renderer integration
  • 2026-03-22 Added dashboard-level studio renderer tuning with persisted scene, load, and FPS-cap preferences
  • 2026-03-22 Switched preview launching to track real processes directly and added in-window studio controls plus more distinct scene designs
  • 2026-03-22 Added automatic preview-status refresh in the dashboard and safer reload-to-restart fallback behavior
  • 2026-03-22 Added one-click starter presets to the dashboard for common overlay styles
  • 2026-03-22 Collapsed deeper sidebar sections by default to reduce intimidation without removing discoverability
  • 2026-03-22 Added a dashboard workspace-status card with validation summary, save state, runtime info, and quick actions
  • 2026-03-22 Made studio preview reload restart safely instead of sending it down a brittle signal path and turned the sidebar into a one-open-at-a-time accordion
  • 2026-03-22 Added dashboard preview-size controls, clamped preview docking inside the screen, and started moving deep settings pages onto a custom control-deck shell
  • 2026-03-22 Fixed the preset/save deadlock path, added dashboard profile deletion plus smarter width/offset controls, and made layer conflicts an inline page
  • 2026-03-22 Brought Raw Editor and Integrations onto the same redesigned shell and fixed Steam launch generation to react live to method changes
  • 2026-03-23 Added a right-aligned preview safety path that widens the preview and skips side-docking when the HUD is anchored on the right
  • 2026-03-25 Added real hotkey capture UX as a roadmap item instead of treating typed MangoHud syntax as the final keybinding experience
  • 2026-03-25 Replaced the old Studio preview binary with a socket-driven mangotune-preview renderer that takes dashboard defaults from env and reload commands over a Unix socket