freezmo/app
Martin Dvorak 1f2e702b4e Stop blurring the animated scene on static glass (2x frame time)
The MacBook ran hot browsing the app: the ice scene animates constantly, so
every backdrop-filter surface re-ran its blur on every frame. Measured on
desktop (2x CPU throttle, software renderer): p50 frame 66.6ms baseline,
33.3ms with the static surfaces not filtering, 16.7ms with the scene's
animation also off; frames over 34ms: 128 -> 14.

The glass recipe is split: floating layers (sheets, dropdowns, dialogs, the
sticky header/chrome/tab bar) keep the blur (backdrop-blur-lg, what phones
already used); static layers (cards, the sidebar rail, the gate, the study
prompt card) keep the identical tint, rim, highlight and shadow without the
filter. The study prompt card moves from glass-panel to card + glass-solid,
which is the same surface recipe.

Quality: a deterministic pixel diff (scene motion frozen, both themes,
desktop + phone) shows a ~1% colour shift in the card backdrops — invisible.
The mobile axe contrast audit and the bubbles suite stay green.
tests/bubble-perf.mjs now also reports the glass cost. README: decision 61.
SW -> freezmo-v49.
2026-10-12 19:47:36 +00:00
..
api Check-my-work attachments, smart review follows deletions, GPL-3.0-only 2026-10-12 16:04:53 +00:00
chat Chat mode, phase 1: grounded streaming chat over your notes 2026-10-11 18:32:11 +00:00
create Navigation restructure: five-tab bottom bar, no phone drawer 2026-10-10 16:53:55 +00:00
deck/[id] Native-feel pass: PWA integration, system back, offline, haptics, undo 2026-10-10 12:16:03 +00:00
exam Smart Review: instant loading feedback, no more dead-feeling tap 2026-10-11 14:35:16 +00:00
homework Navigation restructure: five-tab bottom bar, no phone drawer 2026-10-10 16:53:55 +00:00
offline Add an English/Czech interface language switch 2026-10-08 13:56:32 +00:00
review Smart Review: instant loading feedback, no more dead-feeling tap 2026-10-11 14:35:16 +00:00
share Navigation restructure: five-tab bottom bar, no phone drawer 2026-10-10 16:53:55 +00:00
share-target Native-feel pass: PWA integration, system back, offline, haptics, undo 2026-10-10 12:16:03 +00:00
stats Smart Review: instant loading feedback, no more dead-feeling tap 2026-10-11 14:35:16 +00:00
favicon.ico Use the new app icon everywhere 2026-10-08 00:38:54 +00:00
globals.css Stop blurring the animated scene on static glass (2x frame time) 2026-10-12 19:47:36 +00:00
layout.tsx Chat layout: history in the main sidebar, consistent header, cleaner icon 2026-10-11 20:11:11 +00:00
manifest.ts Infra: split dev and production (releases, services, deploy script) 2026-10-11 19:25:29 +00:00
page.tsx Navigation restructure: five-tab bottom bar, no phone drawer 2026-10-10 16:53:55 +00:00