We built AI that's constrained to your component library - so it can't go off-brand
Something we kept seeing across every enterprise team we work with: AI design tools generate fast, then the cleanup takes longer than building from scratch.
The pattern is always the same. The AI generates a beautiful dashboard. Everyone's impressed. Then someone looks closely. Wrong button variant. Spacing doesn't match the system. The card uses a shadow you deprecated months ago. The loading state doesn't exist. A developer receives it and rebuilds everything using the real components anyway.
The generation was fast. The aftermath was expensive.
UXPin Merge
Hey Product Hunt 👋
We've been building AI into UXPin for over a year now – AI Component Creator, AI Helper, and more.
These experiments taught us where AI works well, and where it breaks down.
The pattern we kept seeing:
AI can generate UI, but when you try to use it in your product, it doesn't match your components. You lose context. You rebuild everything.
We unified everything under Forge – the AI engine powering UXPin.
What Forge does:
🎨 Works with your design system – MUI, shadcn/ui, Ant Design, or your own components via Merge
🌐 Start from prompts, images, URLs, or existing code
🔄 Keeps context so you can refine instead of restart
✏️ Switch between AI and manual editing anytime
⚡ Outputs clean JSX
If you've been burned by AI tools that ignore your system – this is built for exactly that gap.
👉 Try Forge: https://www.uxpin.com/forge
Curious what you think 👀
@nat_lasica great work on the launch Nat!
Hey Product Hunt 👋
I'm Andrew, CEO of UXPin.
We've been building design tools for over a decade and Forge is the result of a question we kept asking: 'why does every AI design tool ignore the thing enterprise teams care about most - their component library?'.
Claude Design reads your codebase and approximates. Lovable and Bolt generate their own conventions. v0 locks you into shadcn.
None of them use your actual production components.
Forge does.
Your React library syncs via Git, or you can used a native global library we've already integrated for you.
The AI generates exclusively with those components - real props, real variants, real states. Then you can switch to professional design tools for refinement on the same canvas. No tokens burned on edits.
The export is production-ready JSX referencing your actual imports. Developers copy it and ship it. Nothing to interpret. Nothing to rebuild.
For teams without a custom library, Forge works out of the box with MUI, shadcn/ui, Ant Design, and Bootstrap.
We named it Forge because a forge doesn't replace the blacksmith - it gives them heat and speed. The craft still requires you.
Would love your honest feedback. We're here all day.
Andrew
@nat_lasicaWe tried Claude Design but the output kept drifting from our brand. Does Forge have that problem?
@nat_lasica @abhiranjan_mehta Short answer: no, because the architecture prevents it.
Claude Design reads your codebase and generates new elements styled to match. That's approximation - and approximation drifts. Wrong fonts, incorrect colours, inconsistent spacing. We heard the same from dozens of people just this week.
Forge works differently. Your component library syncs from Git into UXPin meaning Forge can only use components that exist in your library. It can't generate a button variant you haven't defined. It can't invent a card style that isn't in your system. Off-brand output isn't something you catch in review, it's structurally impossible.
On top of that, you can set Design System Guidelines: plain-text rules that constrain all AI output. Things like "primary buttons only in the main CTA position" or "cards always use 16px padding." Every team member, every generation, same rules.
Try it with one of the built-in libraries (MUI, shadcn) and you'll see the difference in the first prompt.
Interested in how clean the JSX is in practice, anyone got some intel for me?
@chase_horn you could always start a trial, prompt something you want and then hit 'get code' and find out 😉
Here is an example output straight from a prototype;
import Button from ‘@mui/material/Button’;
import Card from ‘@mui/material/Card’;
import TextField from ‘@mui/material/TextField’;
import Typography from ‘@mui/material/Typography’;
<Card >
<CardContent>
<Typography variant=”h5″>Create Account</Typography>
<TextField label=”Full Name” variant=”outlined” fullWidth />
<TextField label=”Email Address” type=”email” fullWidth />
<Button variant=”contained” fullWidth>Sign Up</Button>
</CardContent>
</Card>
@mui @andrew_uxpin I did shortly after commenting this, this is some impressive s@%&, you guys will be hearing from my design team shortly.
UXPin Merge
@chase_horn VERY clean ...
@uxpinjack Thanks!
Design tools keep getting closer to real product behavior… interesting to see how far that actually goes in practice.
UXPin Merge
@sonu38 Yeah, the gap is usually in implementation. Most tools get close visually but devs rebuild anyway. With Forge you start with real components instead of mockups.
Give it a try, curious to hear how it works for you!
@sonu38 i feel like we got really close to closing the gap way back when we released Merge. With Forge we are introducing AI and combining it with Merge technology to speed up the process.. all while ensuring the designers maintain complete control and can manually iterate whenever they want.
Baremetrics
Can it build out my custom library from the beginning, like before I launch and am making design decisions?
UXPin Merge
@luke_marshall4 It not only helps with design decisions, but also helps teams move onto a real coded component foundation so they can start shipping faster.
With global libraries like MUI, shadcn/ui, or Ant Design, Forge maps your brand and design language onto existing production-grade components. From there, it generates layouts using those real components and outputs production-ready code out of the box.
@luke_marshall4 Jack nailed it with his response. You can also use the global libraries and create your own themes for different projects
How does the URL-to-UI feature work? Can I paste any website?
@thomas_dupuy2 you sure can!
You can ask it to replicate the URL so you can have an editable UI to work with, or you can use a URL for inspiration for your own design.
UXPin Merge
@thomas_dupuy2 You can see it in action here: https://focusee.imobie.com/share/14013b5c6d15448698b2f7fe26ff0cca
@uxpinjack Awesome! Exactly what I was looking for