Theme Development Guide
Unify your games. Reclaim your PC.
CSS Variables
NexusPlay’s rendering engine exposes 48 scoped custom properties per UI context. Override them in your `theme.css` to instantly rebrand panels, grids, and overlays without touching the core DOM.
Start by targeting the root namespace `.np-root`. Define your palette using standard HSL or hex values. Setting `--np-accent-primary: #6C5CE7;` will propagate across launch buttons, active tab indicators, and download progress bars. Always pair your overrides with `--np-surface-elevated` and `--np-text-muted` to maintain visual hierarchy. Test contrast ratios against the base background, and include fallback declarations for legacy Windows 10 builds running launcher version 3.6 or earlier.
Structure
Every valid NexusPlay theme requires a flat directory layout with a `manifest.json` descriptor and a single `theme.css` stylesheet. Pack your files into a `.npt` archive before installation.
manifest.json
Defines metadata like `id`, `name`, `author`, `version`, and `engine_min` (currently 3.8.0). Include a `description` under 120 characters and specify supported UI modules: `library`, `store`, `settings`, or `overlay`.
theme.css
Contains your variable overrides and optional structural tweaks. Use `@media (prefers-color-scheme: dark)` to auto-switch palettes. Avoid absolute positioning; rely on flexbox utilities provided by the launcher’s base stylesheet.
Assets & Icons
Place SVGs or WebP images in an `assets/` subfolder. Reference them via `url('./assets/icon.svg')`. Keep total package size under 4MB to ensure rapid hot-reloading during development mode.
Publishing
Once your theme passes the automated linting checks, upload it to the NexusPlay Workshop. Our validation pipeline verifies JSON schema compliance, checks for broken asset references, and scans for deprecated selectors.
After submission, your theme enters a 24-hour review queue. Approved themes receive a unique workshop ID and are instantly downloadable by over 2.4 million active launcher users. Track installation metrics, gather community ratings, and push incremental updates using semantic versioning. Tag your theme with accurate metadata like `minimalist`, `vibrant`, or `accessibility-focused` to improve discoverability in the theme browser.
Download Theme SDK View Workshop Guidelines