TypeScript · React · Vercel AI SDK · Zod · Motion

Most LLM apps are text in, text out. fabrik lets the model answer with interface — it picks and fills real React components (cards, forms, charts, pickers) instead of emitting a wall of prose. The AI decides what to show.
It's provider-agnostic: wire it to any model through the Vercel AI SDK (Gemini, OpenAI, Anthropic, …), keep the API key server-side in a single route handler, and render the streamed component tree on the client. Components are validated with Zod schemas, so the model can only produce UIs you've defined — no arbitrary markup, no injection surface.
The bet behind it: as models get better at tool use, the next interface isn't a chat bubble — it's a UI the model assembles on the fly for the task at hand.