I've been tinkering with AI coding tools lately, and yesterday I rebuilt the Stable Discussion website using Vercel's v0. The experience was both delightful and frustrating, summing up the state of AI-assisted development.
For those unfamiliar, v0 is Vercel's AI tool that generates "production-ready" code from natural language prompts. It's similar to having a junior developer who can code quickly but sometimes misunderstands your instructions.
The Good: Rapid Development That Works
Starting with v0 was surprisingly smooth. Within 8 or 9 prompts, I had a decent-looking website. Describing what I wanted and seeing it materialize felt remarkable – especially for someone like me who dreads the initial project setup because ideas seem to grow with time.

What impressed me most was how v0 handled the overall structure. It understood the concept of a modern Next.js website, including advanced usages I'm familiar with, and implemented it with clean React components and Tailwind styling. For someone building a marketing site or simple web app, this acceleration is significant.
The Challenges: When AI Becomes Excessively Creative
However, like any AI tool, things weren't perfect. v0 tended to over-index on everything I described, sometimes jumping between different approaches based on subtle prompt changes. It wasn't until I added a screenshot reference that it aligned with my vision.
Several issues required manual handling:
YouTube API Implementation
The YouTube API integration code was... optimistic. v0 created a solution that first searched and then requested the first matching channel – not efficient. It asked for my API key (showing how to get one) but didn't implement it in the code or set it up as an environment variable after prompting me.
As a side effect I now know how to configure environment variables in v0 but I think the assistant was supposed to hide that from me.
Inconsistent Updates
When I asked for specific changes to one section (like the hero), v0 would often change other elements too (like all the headings). This created a situation where fixing one thing would unexpectedly alter another.
Missing Caching
The YouTube API quota was quickly exhausted, and v0 didn't implement caching. For a production site, this is a critical oversight that required manual fixing.
Library Stubbornness
When I tried to implement the latest release of AnimeJS for animations, v0 fought against me, insisting it knew better which version to use. This created a frustrating dynamic – I found myself thinking, "Just do what I'm asking, please!"

The Deployment Dance
The most challenging part was moving the project between Vercel accounts. I had created the site under my personal account but needed it under my company account.
I assumed v0 backed up to GitHub, so I could simply reconnect the repo to a new Vercel instance. Not so fast! When I tried this, I ended up disconnecting GitHub entirely, creating a mess. Now I have two GitHub repos and only one is still linked with v0.
Lesson learned: Vercel instances are first-class citizens, and GitHub connections are secondary. In the future, I'll create a new Vercel project linked to the existing GitHub repo rather than trying to rearrange things.
Ranking the AI Coding Assistants
After testing several “ship to prod” AI coding tools, here’s my ranking:
1. v0 - Despite its quirks, it's the simplest and most helpful. Using it from my phone at the gym was a surprisingly useful feature!
2. bolt.new - Nearly as flexible and easy as v0, but lacks tight Vercel deployment integration I’m already using. I do think I wouldn’t have had issues with Anime.js with bolt however.
3. lovable.dev - Similar to bolt.new but with a less polished experience. I need to give it another try, but my first impression was underwhelming.
4. Replit Agent - Great for backend services but struggles with UI work. And let's be honest – who is writing pure backend services these days?
Final Reflections
Despite the challenges, v0 transformed a task I was too busy to tackle and dreaded into something enjoyable. The hardest parts of web development became easier, allowing me to focus on the creative aspects rather than boilerplate code.
These tools aren't magic. They require a clear vision, specific guidance, and a willingness to fix things when the AI misunderstands. The best approach is treating them as collaborative partners rather than independent creators.
I'm keeping v0 in my toolbox as a valuable assistant – one that can accelerate development while needing occasional adjustments. I'm excited to see how these evolving tools will reshape our workflows and unlock new capabilities.
Have you tried v0 or similar AI coding tools? I'd love to hear your experiences in the comments!