Back to Devlog
    v0.4.1
    UIJanuary 1, 2026Release notes

    The Release Where Inline Styles Went to Class

    Four files. One pattern. Every hardcoded style string replaced with a CSS class, and a UIStyles module that finally exports what it builds.

    Four Files, One Habit

    text
    MenuSystem.ts        -> ui-pause-panel, ui-pause-title
    LoadingScreen.ts     -> ui-loading-screen, ui-loading-logo, ui-loading-progress
    ThunderEffect.ts     -> ui-thunder-flash
    ScreenTransition.ts  -> ui-screen-transition

    Every one of those replaced an inline style.cssText assignment. UIStyles.ts gained getPauseMenu(), getLoadingScreen() and getEffects(), and the whole thing was re-exported from engine/ui/index.ts.

    Why This Is In The Archive

    Because it is the least impressive release in the file listing and one of the two most consequential. Everything in the print-slab site you are reading now — the raised keys, the ticket edges, the slab offsets, the mobile-scale multipliers — is CSS living in classes instead of JavaScript strings.

    A ui-thunder-flash class is a thing you can restyle, target with a media query, and hand to a designer. A cssText string in a flash effect is none of those things.