A few weeks ago I noticed something that I could not unsee.
Every screen I generated with AI looked like it belonged to the same generic product. Not my product. Some other product that does not exist, the one all these tools seem to be quietly designing for.
For a while I blamed myself. Better prompt, better reference, better luck next time. Then it stopped feeling like a me problem and started feeling like a pattern, so I ran a small test to see if I was imagining it.
I gave six AI tools the exact same brief.
Prompt :- Design a home screen for an AI agent workspace app.
A finance team uses it to assign work to AI agents, review tasks that are waiting for approval, and chat with an agent to plan what to do next.
Include a left sidebar for navigation, a main message input at the top, a list of items that need attention with status labels, and a list of available agents with short descriptions.
I pasted the identical brief into all of them and kept the very first result, resisting the urge to rerun it or quietly pick the nicest one.
Here is what came back.
Look at them together and something uncomfortable happens.
They are not copies, but they are clearly siblings.
The same indigo accent.
The same rounded stat cards.
The same Inter on the same 8px grid.
The same little robot glyph standing in for every agent.
The same colored status pills. Different tools, different companies, one face.
We have started calling this slop. But the word gets used as a synonym for ugly, and that is not the problem at all.
None of those screens are bad. The spacing is even, the contrast passes, drop any one into a portfolio and it looks fine?? Are you sure?
That is the trap. They are competent and anonymous at once, like every product came out of one mold in a different coat of paint.
The same indigo accent. The same stat cards with little green arrows. The same status pills, the same generic icon standing in for a whole product’s personality.
These are not design decisions. They are defaults, and every tool reaches for the identical ones.
It is not a taste problem you can prompt your way out of.
When a tool designs a screen, it has never seen your product, so it invents one.
It guesses an accent, picks a safe font, builds a tiny throwaway design system on the spot, then forgets it the moment the next screen loads.
That is the real cost of generation. The AI is not working inside your design language. It is inventing a new one, badly, every single time.
I give the AI less room to invent.
Slop fills the gaps I leave, so I stop leaving gaps.
That means being specific, and it means handing the tool a real design system instead of letting it guess one.
I define the roles, the type, the spacing, the components, the rules for how they fit.
I decide those things myself, up front, and the AI stops deciding them for me badly.
So the order has to flip.
Instead of asking for a screen and hoping a system comes with it, I build the system first and generate the screens out of that.
The problem is that most tools cannot work this way.
They draw the screen and improvise the system in one move, then discard it the second the screen appears.
What I needed was a tool that treats the system as the thing it keeps, not the thing it forgets.
That is where Moonchild came in. Moonchild was the one tool I found built the right way around, system first, so I put it to work on our actual product to see if it could kill the sameness. Here is what happened.
I built the Softworker product demo end to end frontend, and shipped it
I started with the system, not the screen.
Before I prompted for a single layout, I built the design system in Moonchild.
Color, foundation, spacing, components, the rules for how an agent card or a status row should behave.
Sometimes I go with the default design system from gallery. This time I built one from scratch.
**Moonchild DS Link :- **https://studio.moonchild.ai/ds/065e450e-0c3f-411b-b97d-45b16362c941/Softworker-DS?shared=design-system
Due to lack of time, this time I did not generate screens in Moonchild first. I used it to build the design system then, switched to dev side.
I exported the DS as a markdown file, fed the file to[Antigravity], and let it generate the screens straight from those rules.
And the moment it had the system to follow, it started handing me consistent screens, one after another, all speaking the same language.
When the screens came through, I was genuinely happy. It felt worth it. For once I was not staring at the same generic AI slop, I was looking at a real demo that actually felt like our product.
And it saved me half the work.
The refining I usually brace myself for barely happened this time. It is still AI, so it was not perfect, nothing ever is, but it landed about ninety percent on point straight away. That last ten percent was a quick polish instead of a rebuild, and that gap is the whole difference.
Link of Softwroker product demo
I am not going to pretend it was flawless. Two things tripped me up.
Antigravity reads the system, it does not photocopy it. It followed my markdown file closely, but following is not copying. The first build came out a little off.
Spacing drifted, some components got broke, and it took me a couple of passes to pull the screens back in line with what the system actually said. So the gain was real, but it was not zero effort. It was less effort.
All the magic sits at the front.
The only reason those screens looked like a real product is that I spent the hard work building the system first.
If I had fed Antigravity a thin or messy system, it would have built me thin, messy screens just as faithfully. **The tool does not do the thinking for me**. It just makes sure the thinking I already did does not get thrown away on every prompt.
For two years the promise of AI in design was speed, and the reality was cleanup. I would generate fast, then lose all the saved time dragging everything back in line with the brand. The tool moved the work around. It never actually removed it.
Building the system first changes the job itself.
Once the system goes in before the screens, I stop being the person fixing the AI’s guesses and start being the person directing it.
My hours go to the decisions that actually need me. How the flow should feel, where to break the pattern on purpose, which direction is right for this product and not just any product.
That is the part I am excited about.
The AI did not replace my taste. It just stopped wasting it.
So that’s it.. Thankyou !!
You can find more of my thoughts and work credibility on LinkedIn, Instagram, My portfolio .
If you would like to connect directly, feel free to reach out on WhatsApp at +91 955990461 or email me at nishkarshgupta381@gmail.com.
I am always open for my readers :)
How I Design UI with Help of AI Tool, Without Ending up With Slop was originally published in Towards AI on Medium, where people are continuing the conversation by highlighting and responding to this story.