Build the WSGM-side CSS theme experience on top of the toolkit's theme loading primitives (#41), so nobody has to launch CSSLoader-Desktop. Controller and touch friendly, inside WSGM and Steam Game Mode.
Not part of the 2.0 milestone.
What WSGM does
Browse available themes, install and uninstall, enable and disable, update, show screenshots, previews and metadata, expose per-theme settings, manage several installed themes and their order, show compatibility and load errors clearly, persist installed, enabled and configuration state, and clean up properly on uninstall or reset.
Use the CSSLoader repository and ecosystem as the content reference, consuming compatible repository metadata where practical so existing themes can be discovered and installed without a WSGM-specific catalog.
UX
Recreate what is good about the Decky CSSLoader plugin: a CSSLoader section in a custom right-QAM tab, installed theme controls, theme settings, the browser, and update management. Use full custom Steam pages where the QAM is too cramped for browsing, detail and settings.
Dependencies
#41 for theme loading, #42 for custom QAM tabs, #24 for custom pages.
The toolkit owns injection, lifecycle and configuration. WSGM owns discovery, downloads, installation, updates, persistence and management UX. Do not duplicate injection logic in the browser.
Done when
Existing CSSLoader themes can be browsed, installed, enabled, configured, updated and removed entirely from WSGM, it is usable with controller and touch in Game Mode, QAM and full-page views stay in sync with real theme state, and CSSLoader-Desktop is no longer needed for normal theme management.
Build the WSGM-side CSS theme experience on top of the toolkit's theme loading primitives (#41), so nobody has to launch CSSLoader-Desktop. Controller and touch friendly, inside WSGM and Steam Game Mode.
Not part of the 2.0 milestone.
What WSGM does
Browse available themes, install and uninstall, enable and disable, update, show screenshots, previews and metadata, expose per-theme settings, manage several installed themes and their order, show compatibility and load errors clearly, persist installed, enabled and configuration state, and clean up properly on uninstall or reset.
Use the CSSLoader repository and ecosystem as the content reference, consuming compatible repository metadata where practical so existing themes can be discovered and installed without a WSGM-specific catalog.
UX
Recreate what is good about the Decky CSSLoader plugin: a CSSLoader section in a custom right-QAM tab, installed theme controls, theme settings, the browser, and update management. Use full custom Steam pages where the QAM is too cramped for browsing, detail and settings.
Dependencies
#41 for theme loading, #42 for custom QAM tabs, #24 for custom pages.
The toolkit owns injection, lifecycle and configuration. WSGM owns discovery, downloads, installation, updates, persistence and management UX. Do not duplicate injection logic in the browser.
Done when
Existing CSSLoader themes can be browsed, installed, enabled, configured, updated and removed entirely from WSGM, it is usable with controller and touch in Game Mode, QAM and full-page views stay in sync with real theme state, and CSSLoader-Desktop is no longer needed for normal theme management.