Don't Repeat Yourself
160+ components and theme controls, plus a CLI, MCP, and feedback engine to keep AI on track.
100% free & open-source.
bun install -g @dryui/cli@latest && dryui Supported in
or configure manually.
What's inside
Components, tokens, and a live feedback loop to your agent.
- MCP server
askbefore writing,checkafter - CLI
dryuifor setup, lookup, tokens, and feedback - Lint preprocessor
CSS grid and container queries, enforced at build time
- Theme Wizard
One brand colour, a full
--dry-*token palette - Live Feedback
Annotate the running app, your agent reads it via MCP
- Diagram engine
Node-and-edge renderer, same one powering this page
Yes, we have light and dark modes.
How DryUI compares
A zero-dependency library, free and open source, wired to your agent via MCP.
Figma's AI-to-code, inside the editor.
- Prompt → UI screens in Figma
- AI-credit metered plans
- Generated code, not a library
A component library, not a generator.
- Production components, not mockups
- Zero runtime dependencies
- Maintained library, no lock-in
You just need an AI agent (free local ones work fine).
How DryUI works
Prompt in. UI out. Feedback loops straight back to your agent.
This is the <Diagram /> component. Drop it into your app.
Under the hood
Why we built DryUI on Svelte 5 and SvelteKit, not React.
One framework, one way to do things. Runes for state, scoped styles for CSS, file-based routing. No "pick your stack" meeting.
Svelte compiles to plain DOM updates. No virtual DOM, no runtime tax. DryUI hooks into that compile step to lint your code before it ships.
SvelteKit ships routing, SSR, endpoints, forms, and transitions. The React equivalent is half a dozen libraries you wire together yourself.
React's ecosystem sprawls across Redux, Zustand, Tailwind, CSS-in-JS, Next, Remix, and TanStack. Too much choice and disparate deps confuse LLMs. Svelte gives them one obvious path.
Learning a new framework is a problem of the past. Your agent already speaks Svelte.
Still here?
Install the plugin, wire it to your agent, and start building.