Build a component preview server — a standalone Haskell web app that renders every shared UI component with dummy data on a single page.
Purpose: Enable pure design review without navigating the full app. Like Storybook but zero JS build tooling — just Haskell + Lucid + Clay.
Omni/Web/Preview.hs — a simple WAI app (or run.sh script) that: 1. Serves a single page at / 2. Renders every component from Omni/Fund/Web/Components.hs (and eventually Omni/Task/Web/Components.hs) with example data 3. Groups components by domain with headings 4. Uses the same design system CSS (Omni/Web/Style.hs) 5. Shows each component in light and dark mode side by side (or toggle)
# Fund Components
## KPI Card
[actual expenses] [labor income] [yield needed]
[$77,695] [$240,000] [$0]
## Section Block
[titled section with description paragraph]
## Slider Row
[income target ----o---- $180,000]
## Delta Table
[asset | fund | target | actual | delta | action]
[BTC | growth| $2M | $1.5M | +$500K | buy ]
bild Omni/Web/Preview.hs builds successfullyAva verified: implementation present in live tree (file/feature confirmed via inspection). Moving to Verified.
Created Omni/Web/Preview.hs — standalone component preview server at localhost:8085. Renders all shared fund components with dummy data: fundSection, fundSectionWithDesc, kpiGrid, kpiCard variants (plain, withId, withTip, Alpine), sliderField, kelSliderField, color reference. Uses real shared CSS from WebStyle + FundStyle. Build: bild Omni/Web/Preview.hs, run: Omni/Ide/run.sh Omni/Web/Preview.hs