
Build Today, Learn Tomorrow: In Defense of the Slop Fork
I forked a React library, pointed AI at it, and got a Vue port working in an afternoon. It's a slop fork. It works. I'll take that trade.
Zain Wania
There's a gap in the Vue ecosystem. Streamdown — a clean, minimal markdown streaming renderer — exists for React. It works great. But if you're building in Vue and you want the same thing, you're on your own. Copy-paste Stack Overflow answers, roll something yourself, or just go without.
I went with option four: I forked it, pointed AI at it, and got a Vue port working in an afternoon.
Is the code beautiful? No. Did I write every line from scratch with full understanding of each decision? Also no. Is it a "slop fork" in the way people use that term to mean AI-generated, low-effort, probably-shouldn't-exist code? Honestly, kind of.
But it works. And before I built it, nothing did.
Slop has earned its reputation. GitHub is flooded with AI-generated repos that are half-finished, wrong in subtle ways, and exist mainly because someone thought "I could make a tool for that" and let a chatbot do the rest. Nobody reviews it, nobody maintains it, and it quietly rots while people star it thinking it might be useful someday. That's the bad version of this story.
But I think we're conflating two different things: slop that shouldn't exist, and slop that fills a real gap. The first is noise. The second is just an unglamorous solution to an actual problem.
The Vue port of Streamdown is the second kind. The need was real. The gap was real. And now there's something where there was nothing.
Here's the part I find more interesting though: AI changed the order of operations.
Before, if you wanted to build something you didn't fully understand, you were mostly blocked. You had to learn enough to build it, which meant the thing either got built slowly, got built badly, or never got built at all. The learning was a prerequisite.
Now you can flip it. Build today, learn tomorrow. Ship the thing, get it working, and then go back and understand what it's actually doing. The learning still happens — it just happens on a working foundation instead of a blank page.
That's not laziness. That's a different workflow. And for filling ecosystem gaps — stuff that's niche enough that nobody's going to write a polished OSS library for it — it's actually kind of powerful.
I'm not going to pretend I have perfect command of every piece of that Vue port. But I understand it well enough to use it, debug it when something breaks, and improve it over time. That's more than I had before I built it. The gap between "I used AI to build this" and "I don't know what I built" is wider than people assume.
The honest version of this post isn't "AI-generated code is fine, actually." It isn't. A lot of it isn't fine. You still have to know enough to evaluate what you're getting, to know when something is subtly broken, to make real decisions about tradeoffs. AI doesn't replace that judgment — it just lowers the floor on what you need to get started.
What it does give you is permission to solve your own problem today, even if your understanding is going to catch up tomorrow.
The Vue ecosystem needed a Streamdown port. Now it has one. It's a slop fork. It works. I'll take that trade.