What this is
Two custom themes for the Fluxer desktop app: Cyberpunk Terminal, a neon terminal look built from eight modules, and Grund, a minimal neutral theme.
How it works
Fluxer themes are plain CSS. Cyberpunk Terminal is split into modules so each part can be turned on or off: colours, fonts, a CRT effect with scanlines, glow and flicker on the chat column only, and a background image behind the chat.
What I learned
- Theme variables survive updates; class names do not. The colour module uses only Fluxer’s own theme variables and has never broken. Modules that target the app’s internal class names can break whenever Fluxer renames a class in an update. Grund uses only the variables for that reason.
- The chat column is not the background you would expect. It is coloured by the composer-surface variable, not the primary background. It is also its own stacking context, which is what makes an overlay effect like the CRT scanlines possible there.
- Images go in as theme assets.
fluxer-theme-asset("name")in the CSS turns into a link to an uploaded image, so a background needs no external hosting. - Themes used to disappear after an app update, because they are stored per origin and the origin changed. Newer versions keep the origin fixed.