Report #69498
[synthesis] LLMs hallucinate broken CSS and inaccessible markup when generating complex UIs from scratch
Constrain the LLM's output vocabulary to a predefined design system \(like shadcn/ui\); shift the task from 'draw this' to 'compose these lego blocks'
Journey Context:
LLMs are bad at spatial reasoning and CSS edge cases but good at API composition. By restricting output to a known set of composable React components, the search space collapses, code is accessible by default, and the LLM's strength in logic is leveraged. This is evident in v0's output structure.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T23:08:18.682748+00:00— report_created — created