Vibe Coding Goes Mainstream: Inside Vercel's v0 and the Future of Building Apps

Watch Vercel CPO Tom Occhino demo v0, the AI-powered platform transforming web development. See him build a deployed financial portfolio tracker in minutes—with zero boilerplate or DevOps—and learn how 'vibe coding' is solving the blank canvas problem.

Written By
Grant Harvey
Grant Harvey
Dec 23, 2025
15 minute read

Remember the last time you stared at a blank code editor, cursor blinking, knowing exactly what you wanted to build but dreading the hours of setup ahead? That frustration is exactly what Vercel's Chief Product Officer Tom Occhino wants to kill.

We sat down with Tom for a live demo of v0, Vercel's AI-powered development platform, and what we saw changed how we think about building software. In about 20 minutes, Tom built a sophisticated financial portfolio tracker from a single prompt. No boilerplate. No config files. No DevOps headaches. Just describe what you want, and watch it materialize.

But here's what really stood out: v0 isn't trying to replace developers. It's trying to make building fun again.

Check out the full livestream in the video below, or keep scrolling to read our recap of the episode.

The Problem with Building Things Today

Before diving into v0, it helps to understand why Vercel exists in the first place.

Tom spent over 12 years at Facebook helping build React, React Native, and JavaScript infrastructure. During that time, he noticed something strange: Facebook's infrastructure team was roughly the same size as its product engineering team.

Think about that. Half of the engineering effort at one of the world's most sophisticated tech companies went toward things most people would consider a cost center: DevOps, release engineering, site reliability, framework development.

"Over here you have these things that many would consider annoying," Tom explained. "And then over here you have products that actually drive engagement and create good experiences and revenue."

The infrastructure Facebook built was incredible. It was also built to work for exactly one company. Tom saw an opportunity to take that same sophistication and make it available to everyone.

That's Vercel's core pitch: zero-config infrastructure that understands your application and deploys it globally without you needing to think about servers, CDNs, or Kubernetes clusters.

Advertisement

"Would it be fair to say you're abstracting away the horrors of AWS?" we asked.

"That's right," Tom laughed. "We hire the AWS experts who know the intricacies of the dashboard and every single feature and function and service and product. So you don't have to. You get to focus on your product."

From Git Push to Prompt Push

Vercel's been around for over 10 years, quietly becoming the backbone of modern web development. They're the company behind Next.js, now the most popular React framework in the world. Over 11 million developers use their platform. They serve 1.5 trillion requests per month.

But a couple years ago, as LLMs started getting good enough to write convincing code, the Vercel team had an idea. Tom calls it "text to app."

The insight was simple: every time you start a new project, you start with a blank screen. For designers, a blank canvas might be liberating. For engineers, it's torture.

"There's nothing worse than a blank canvas," Tom said. "I can go in any number of directions. I just want to start with something I can pick up and run with."

That's where the name v0 comes from. Version zero. The starting point you wish you always had.

But here's what's interesting: v0 didn't start as a product Vercel planned to sell. "We built v0 just because we wanted it to exist," Tom explained. "Nobody was like, I wonder what they're going to have someday. We were like, no, this is a tool I want to use today."

The Live Demo: From Prompt to Portfolio Tracker

Enough theory. Let's watch v0 build something.

Tom shared his screen and opened v0.app. At its simplest, there's just a text box asking "What do you want to create?"

He pasted in a detailed prompt for a high-end portfolio tracking web app designed for professional financial analysts. The requirements were specific: total portfolio value dashboard, cumulative returns, allocation tracking over time, sortable and filterable holdings tables, interactive charts.

"This isn't 'hey build me a widget,'" Tom noted. "This is a pretty sophisticated app."

What happened next was mesmerizing.

v0 started by generating a design brief, turning the prompt into a structured plan. Then it began writing code, file by file. You could actually watch it work in real time, seeing each component take shape: the KPI cards, the portfolio store, the types and scaffolding.

Advertisement

"I'm obsessed with watching it work," Tom admitted. "I look at the code it's generated and I'm like, how long would this take me to author? Even if I'm getting tab autocompletion, even if I'm using AI to help me, I'm not going to start with something this full-featured."

The generation used v0 Max, which is powered by Claude Opus. Tom explained the model options: Max is the most capable but takes longer and costs more. Mini is faster and cheaper, good for iterations. The key is you can switch between them easily.

After a few minutes of cooking, the app was ready to explore. And it was impressive.

The portfolio tracker showed performance compared to the S&P 500 with interactive charts. You could hover over any date and see exactly where the portfolio was at that moment. There was a sector allocation breakdown. The holdings table was sortable by price, searchable by position, and included a working watchlist feature.

"What do you guys think?" Tom asked.

Honestly? We were stunned. One prompt, a few minutes, and you have a functional application with features that would typically take days to implement manually.

The Design System: Point, Click, Ship

But v0 isn't just about generating code. It's about making that code yours.

Tom showed off the design controls. Want a different color scheme? Just pick from the palette. Want to adjust the corner radius on all your components? There's a slider for that. Light mode, dark mode, custom fonts—all adjustable without writing a single line of CSS.

The point-and-click editing is particularly clever. Tom clicked on "My Portfolio Tracker" in the header, changed the name, and saved. Done. But you can also get granular: highlight a specific element, type a refinement like "change 'Positions' to 'Equities,'" and v0 makes the minimal change needed.

"You can highlight the thing and you can say fix this," Tom demonstrated. "Super granular changes, and it'll try to do the minimal change to do that."

This matters more than it might seem. One of the biggest problems with AI-generated code is that it can be hard to modify without regenerating everything. v0's approach lets you iterate surgically.

Advertisement

One Click to Production

Here's where Vercel's decade of infrastructure work pays off.

Tom clicked the publish button, and v0 compiled the application into deployment artifacts, distributed them to edge servers around the world, configured SSL certificates, and generated a live URL.

The whole process took seconds.

"This is a live website," Tom said, reading off the URL. The visibility was set to team-only by default, but he could share it with colleagues, make it public, or password-protect it.

This is v0's real superpower. Other AI coding tools can generate impressive code, but actually getting that code running on the internet—with proper security, global distribution, and professional infrastructure—typically requires a whole separate skill set. v0 collapses all of that into one button.

"Critically, this is powered by Vercel," Tom explained. "We've been building the Vercel core platform for the past decade. The CI/CD flow, deploying those artifacts at scale, giving you that URL with an SSL certificate automatically configured—all that stuff just works because v0 is built on top of Vercel."

The AI Gateway: Model Flexibility Built In

One of v0's more technical advantages is its AI SDK and AI Gateway.

Here's the problem they solve: AI models are improving constantly. Claude Opus is great today. GPT-5 might be better for certain tasks tomorrow. If you hardcode your application to use one specific model, you're locked in.

v0's approach is to abstract the model layer. "We don't want to change our product code when a new model drops," Tom explained. "We just want to tweak a little variable, tweak a flag, and then we can use a new LLM or use a new provider for the same model."

During the demo, Tom pulled up the AI Gateway settings. The list of available models was impressive: Claude Opus 4.5, GPT-5.2, Gemini 3 Pro, GLM-4.6, and dozens more. Gemini 3 Flash had been added within 24 hours of its release.

This flexibility extends to apps you build with v0. If you want your application to have AI features, you can route them through Vercel's AI Gateway and switch providers without changing your code.

Advertisement

The Database Question

One of the most common questions about vibe-coded apps is data persistence. It's one thing to generate a pretty UI. It's another to actually store and retrieve user data.

v0 handles this through marketplace integrations. The Vercel marketplace includes databases from Supabase, Neon, and as of recently, AWS itself.

Corey, our co-host, shared his experience: "I had to set up API connections and OAuth with Google, Slack, and some other tools. And it's like, you're going to go there, you're going to set this up, you're going to go to this menu, here are the two things I need."

v0 walks you through the process step by step. Need a database? It prompts you to install one. Need API keys? It tells you exactly where to find them and what to name your environment variables.

To demonstrate, Tom started a fresh prompt: "Let's build a simple blog that I can use to publish articles and back it with a real database."

v0 didn't just generate a blog. It generated an architecture plan including database schemas, row-level security policies, and ASCII art diagrams of the system architecture.

When it came time to connect the database, v0 showed a prompt: "I need a database." Tom clicked to install Supabase, accepted the terms, and within seconds had a brand new database provisioned without ever logging into Supabase directly.

"I haven't logged into Supabase. I haven't created a Supabase account. I haven't done any of that," Tom noted. It all happened through Vercel's integration layer.

Security and Code Protection

A common concern with AI-generated code is security. People in our chat asked about code protection: Can clients see your code? How do you prevent exposing sensitive information?

Tom addressed this directly. "By default, you have a personal v0 account or you have a team account. Anything that you create is private to that account." Nothing is public until you explicitly share or publish it.

For enterprise customers, this goes further. Applications created under a company account are available to colleagues only if you want them to be. Public access requires authentication through Vercel.

Advertisement

But what about security within the generated code itself? The blog example showed v0 automatically including row-level security policies in its database schema. And as Tom pointed out, database connections are tied directly to your Vercel authorization: "This isn't a publicly accessible Supabase database. This is a Supabase database that is tied to the authorization provided by my Vercel account."

That said, it's still worth asking your AI coding assistant about potential security issues. As we mentioned during the stream, there are common vibe coding security pitfalls worth checking: client-side API keys, unprotected endpoints, and similar oversights.

Versioning Without Git (Until You Want Git)

For developers worried about losing work or needing to roll back changes, v0 includes automatic versioning.

Every time you make a change, v0 creates a new version. You can see the version history and revert to any previous state. You can also fork from any point, letting collaborators branch off in different directions.

When you're ready for proper version control, you can connect to GitHub. Once connected, every v0 generation becomes a commit. You get the full power of Git—branching, reverting, pull requests—while still using v0's interface for changes.

"The thing that I really love," Tom said, "is you can connect this to a GitHub repository. I can connect this to my GitHub. It'll create a net new Git repository. And then from there I can use any other tool."

This addresses one of the biggest concerns about AI coding platforms: lock-in. v0 is useful, but you can take your code anywhere.

The iPhone App: Vibe Coding on the Go

Here's a detail that surprised us: v0 has an iPhone app.

During the demos, Tom's phone had been buzzing with notifications. Each update on his generations was being pushed to his device in real time.

"This is what I do all the time," Tom explained. "I fire off a generation. I lock my screen. I go to a meeting and I'm monitoring progress on my phone. Then I get back to my desk, like, all right, this is good. Now I get to keep cooking."

It's a small feature, but it changes the workflow. You can kick off a complex generation, go do something else, and pick up right where you left off.

MCP Connections: Extending v0's Reach

For the technically inclined, v0 supports MCP (Model Context Protocol) connections.

MCPs let you connect v0 to external tools and services. Want to pull data from a specific API? Connect to your company's design system? Feed in context from other platforms? MCPs make that possible.

You can browse existing MCPs directly in v0 or add custom ones by entering server details manually. This extensibility is important for enterprise users who need v0 to integrate with existing workflows.

Emergent Benefits: Communication and Education

One of the most interesting parts of our conversation wasn't about features. It was about unexpected use cases.

Tom drew a parallel to React. When Facebook built React, the goal was improving code quality. They were dealing with complex MVC patterns that made applications buggy and hard to maintain. React simplified that.

But React had unintended benefits too. Teams could scale better because not everyone needed to hold the entire system in their head. And it lowered the barrier to entry for front-end development.

"The same thing is happening with v0," Tom said. "v0 is the way that so many people are learning to code."

You build something with v0, then look at how the code works. Suddenly concepts that seemed abstract become concrete. You're learning by doing, with an AI that can explain anything you don't understand.

v0 has also become a communication tool. Before, if you wanted to share an idea, you'd write a doc or draw on a whiteboard. Now you can describe it to v0, iterate until it matches what's in your head, and show people a working prototype.

"v0 started out as this thing that was going to solve the blank canvas problem for me," Tom reflected. "And now it's solved the communication gap problem, communication fidelity. It's solving or helping with the education opportunity."

The Prompt Enhancement Trick

During the RSS reader demo, Tom showed off a feature worth highlighting: prompt enhancement.

His original prompt was casual: "Let's build a really professional looking RSS reader that helps me organize all of the things I want to read, all of the newsletters, magazines, and podcasts."

Instead of immediately generating, he clicked "enhance my prompt." v0 expanded his casual description into a detailed specification: RSS reader application, seamless categorization of feeds, customizable interface, easy navigation, search filtering, bookmarking, responsive design for mobile web.

"What it's doing is saying okay, the LLM can go out and say like what are the good characteristics of a blog, right?" Tom explained. "It's basically taking the very minimal information that I have given it and turning it into much more helpful information."

This is a great feature for anyone who knows what they want but isn't sure how to describe it technically. Let v0 fill in the gaps.

Pricing: What Does This Actually Cost?

One of the most common questions in our chat was about pricing.

Vercel's core platform uses consumption-based pricing. You pay for storage, requests, and compute based on what you actually use. The hobby plan is free and generous enough for most personal projects. The $20/month pro plan scales to surprisingly large traffic.

v0 pricing is separate. The premium plan costs around $20/month and includes a generous allocation of generations. The cost varies by model: v0 Max (Claude Opus) costs more per generation than v0 Mini.

Tom put it in perspective: "All of the everything that we've generated today on the show is probably sub a few dollars." The portfolio tracker, RSS reader, and blog—all together, just a couple bucks.

For hobbyists, Tom estimated a monthly budget somewhere between $20 and $100, depending on how much you build and which models you use. You can be more efficient by brainstorming in ChatGPT first, using Mini for iterations, or starting from templates.

Building The Neuron App (Live Bonus Demo)

After Tom signed off, we decided to keep experimenting. Why not build an app for The Neuron right there on stream?

Corey shared his screen and started a new v0 chat. The prompt: build an app that brings all of The Neuron's content together—the blog, newsletter archives, and YouTube channel—using our actual RSS feeds.

The first generation was promising but incomplete. The newsletter feed worked. We could see today's edition right there. But the blog feed didn't load initially, and the YouTube section was pulling in shorts we didn't want.

This is where iteration matters. Corey followed up: "The blog feed didn't come in. Here is the RSS link." v0 improved its parser to handle different XML structures. Next prompt: "Please don't pull in YouTube shorts." Done.

Within a few iterations, we had a working content aggregator pulling live content from all three sources. Corey then played with the design customization, changing the accent color to Neuron orange (color code and everything).

The whole build—from zero to a functional multi-source content aggregator—took maybe 15 minutes and cost less than three tokens.

What Vibe Coding Actually Means

Throughout the conversation, we kept coming back to the term "vibe coding." It's become a bit of a buzzword, but what does it actually mean in practice?

For Tom, it's about removing friction between idea and implementation. You describe the vibe you're going for. The AI handles the syntax.

"Your ability to explore the capabilities by just asking it, can you do this?" Tom emphasized. "It's going to say, I don't know, let's think about it together, and we discover so much new emerging capability."

Corey, who describes himself as "absolutely not a software engineer", has been using v0 for a couple weeks. His experience captures the appeal perfectly.

"I feel like I have a friend who's a hell of an engineer," he said. "I sat down at the table by him and I'm like, here's what I want. No, no, I don't want that. Do it this way. Let's do it green."

The key difference from having an actual engineer friend: "It doesn't get annoyed by my stupid questions."

The Learning Opportunity

If you're using v0 (or any AI coding tool), don't just accept the code it generates. Learn from it.

Grant suggested downloading your generated code and taking it to ChatGPT or Claude for explanation. Ask it to go line by line. Ask what each function does. Ask it to explain concepts you don't understand using analogies that make sense to you.

This is active learning. You're building real projects while simultaneously building your understanding of how they work.

As Tom noted, v0 is becoming "the way that so many people are learning to code." It's learning by doing, with infinite patience and explanations tailored to your level.

What's Next for v0

The platform is evolving quickly. During our conversation, a new feature notification popped up: v0 can now ask clarifying questions before it starts generating. Instead of making assumptions, it can ask you what you actually want.

Tom mentioned they're working toward a world where you can "open any app in v0"—not just apps created with v0, but existing codebases. The goal is fluid movement between v0 and your other development tools, using whichever is best for the task at hand.

For now, v0 works best with apps that started in v0. But the trajectory is clear: lower barriers, more flexibility, faster iteration.

The Bottom Line

v0 represents something bigger than another AI coding tool. It's the logical conclusion of Vercel's decade-long mission: make developers more productive by handling the stuff they shouldn't have to think about.

First it was infrastructure. Now it's the blank canvas problem itself.

The portfolio tracker Tom built in our demo would have taken an experienced developer hours, maybe days, to set up properly. v0 did it in minutes. The RSS reader went from vague idea to working prototype in a single prompt. Our Neuron aggregator came together while we were chatting on stream.

Is the code perfect? Probably not. Will you need to iterate and refine? Definitely. But you're iterating on something that exists, not staring at a cursor wondering where to start.

"Make development fun again," Tom said. That's the goal.

Resources

Grant Harvey

Grant Harvey is the Lead Writer of The Neuron, where he continues to lead the publication's daily coverage of AI news, tools, and trends.

The Neuron Logo

Don't fall behind on AI. Get the AI trends & tools you need to know. Join 700,000+ professionals from top companies like Microsoft, Apple, Salesforce and more.

Property of TechnologyAdvice. © 2026 TechnologyAdvice. All Rights Reserved

Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.