Can a non-developer use vibe coding to build and deploy a full-stack app? And can that app actually do anything useful?
I used to be a developer, many decades ago, but Iโm not one any longer. The languages I spoke are all dead, and Iโve long forgotten their grammar, anyway.
But all the vibe coding talk these days has whet my appetite. Could I build an app and make it available to the public without learning anything at all about modern coding languages, deployment platforms, back-end architectures, authentication mechanisms, and all the other things Iโve heard people need to know about nowadays?
Could the average business user?
The answer may surprise you.
In this article:
- Picking my platforms
- Finding an idea for my app
- Writing the master prompt
- Vibe coding with Google Firebase Studio
- Vibe coding with Lovable
- Reality check: vibe coding at work
Picking my platforms
The first platform I chose to test was Googleโs Firebase Studio, which bills itself as a full-stack development and deployment platform. Itโs supposed to do everything for you โ all you have to do is give it a prompt.
I chose it because Iโve been playing around with it for a few months, and each time I come back to it, I find that its usability, functionality, and design skills have increased. When I started, it couldnโt even design a decent interface, much less set up a database with more than one table. Letโs not even talk about authentication and user support. Todayโฆ well, letโs find out.
The other platform I chose to test was Lovable, because everyone I talked to mentioned it. Itโs supposed to be super easy, but unlike Firebase Studio, it doesnโt come with a built-in database. You have to connect an outside database to it, but maybe I could build an app that doesnโt need a database.
So, going into this comparison, I had high expectations for Firebase Studio and low expectations for Lovable.
Finding an idea for my app
I donโt like to brag, but Iโm a bit of an idea genius. When I realized I needed to write an app for this story, I immediately got a great idea for a viral app that could grow โ or launch โ someoneโs company.
Here it goes. You might want to sit down.
Two words: dog birthdays.
You see, dogs age faster than humans, so they should have several birthday parties a year, and helping humans calculate their next birthday would be a great way for a dog treat company to boost sales. Feel free to steal this idea. Youโre welcome. Iโve got plenty more where that one came from.
Writing the master prompt
I took my idea and went to Anthropicโs Claude and asked it to write a detailed description of this app for me. My initial prompt:
I need help writing a prompt. I want to create a simple, user-friendly app to calculate dog birthdays. The idea for this app is that dogs age faster than humans (something like seven human years per dog year), which means they have seven times as many birthdays! The idea is that I work for a dog food and toy company, and want people to buy more treats for their dogs! I want to have a full-stack app, with hosting and everything, so Iโm going to use Googleโs new studio. Can you please write a prompt for me that tells it what to do so it can write the cutest possible app for me that will go viral? Thanks!
And follow-up prompt:
Please use the best possible calculations for dog years โ I donโt think itโs a perfect one-to-seven calculation since they age differently during the first year (or first couple of years.) Can you please look this up?
Claude wrote a very long requirements document. Excellent. No notes. I copied the whole thing, and I was in business.
You donโt have to use Claude. You can use ChatGPT or Grok or whatever you want. Or you can just use the built-in AI in Lovable or Firebase Studio to do this for you. But I like Claude, so I used Claude.
Vibe coding with Google Firebase Studio
I went to Firebase Studio, clicked on the big orange โTry Firebase Studioโ button in the center of the screen, and I was in.
If youโre not logged into your Google account, you will have to do that first. You get 10 free apps on the starter plan, and plenty of database hosting. The thing to watch out for, though, is that if you ask it to build AI functionality into the app, Google will start charging you. Last month, I racked up a total of 4 cents of usage with my productivity app before I figured out I was paying for each AI API call and removed the AI piece.
But my doggie birthday app isnโt going to have any AI in it. Just good old-fashioned logic, so Iโm good.
I pasted the app description into Firebase, and off it went. Its first plan included AI functionality. Sneaky, sneaky, Google. I told it to take the AI stuff out, and it begrudgingly complied. I know it was begrudging because it didnโt say โGreat idea! What a clever way to save money!โ at the beginning of its response.

Firebase Studio returned a detailed app blueprint.
Maria Korolov / Foundry
On its second try, the plan had no mention of AI in it, so I hit the โPrototype this Appโ button, and off it went.
โฆand got an error. Something about a failed hydration.

The dreaded โhydration failedโ error (whatever that is).
Maria Korolov / Foundry
There was a โFix errorโ button, so I clicked that, the AI fixed the error, and now we had a new error. Something about dialog content. โFix error.โ
Then the app worked. The sandbox panel had a working doggie birthday calculator. Woo hoo! I typed in my dogโs name and age, selected his size, and the app calculated his age in human years โ but not his next birthday. Which was the whole point of the app.

The app calculated Buddyโs human age but not his next birthday.
Maria Korolov / Foundry
This was easy to fix. I pointed out the problem, and the AI said: โThis is a fantastic and fun idea! Celebrating a dogโs โhuman yearโ birthdays more frequently is a great way to give them extra love. I can definitely make these changes.โ
And it did.
But other stuff was trickier. For example, the social sharing buttons werenโt working, giving me another error. The AI tried multiple times to fix it without success. I finally realized that maybe the problem could be the fact that the app was trying to run inside the Firebase Studio sandbox, not out there in a real browser.
Thatโs something the AI should have known, but didnโt.
I hit the blue โPublishโ button at the top right, and first I was asked to link a Google Cloud billing account. Uh, oh. Iโll have to remember to cancel everything once Iโm done with this article.

Want to publish your app? Not until you connect your billing account.
Maria Korolov / Foundry
I already had a billing account because Iโd been playing around with Firebase Studio before. Otherwise, youโd have to go through the annoying steps of creating one for the first time. Itโs not hard, just annoying. Then I clicked โSet up servicesโ to get the back-end functionality in place.
The first time I did all this, three months ago, Firebase Studio couldnโt create a nice-looking front end and couldnโt have a database of more than a single table. It also got confused writing complex business logic. I was trying to write a project management app, so I needed multiple related tables and all the business logic.
Two months ago, I tried again, and it created a pretty front end and a back-end database with multiple tables, relations, and indexes, plus complex business logic. The trouble was that I had to get AI keys, set up tables, and set indexes. It walked me through all those steps, but I didnโt want to do them, so it was annoying. And I had to manually paste in API keys using the code viewer. Again, it walked me through it, but I didnโt want to be touching any code at all.
One month ago, I returned once more. This time, it handled everything automatically except for one tiny step: the Google AI API. If I didnโt need it โ and I actually didnโt, I should have left that out and saved myself 4 cents โ it would have been completely hands-off. Well, except for all the error messages and debugging, and figuring out why the business logic wasnโt working, and rearranging things on the screen, and setting up different views of the data. Firebase Studio did all the actual work, but I still had to supervise it and correct it, and it got to the point where I just threw in the towel and switched to using Notion.
Apparently, Firebase Studio can only do what you tell it to do, not what you want it to do. How rude. Plus, at one point it hit a dead end and just couldnโt fix a particular error or undo whatever was now causing it, and I had to revert to a previous version of the code base. That was also annoying, because I had to figure out where the codebase version controls were.
This was all something a determined non-programmer could also do โ especially if they were bull-headed and kept trying different things until something worked. But itโs now a month later still, and it should all go super smoothly. Right? Right?
Back to the doggie birthday app.
Everything was now connected, and I hit the โPublish nowโ button. It told me I had to wait five minutes for the app to be provisioned and deployed. Five minutes! Thatโs an eternity!

Publishing the app takes a long 5 minutes.
Maria Korolov / Foundry
Finally it was done, and I had a URL for my app. You can visit it and try it out: https://studioโpaw-ty-time-6i7kh.us-central1.hosted.app/
Please donโt make it go viral. Thereโs no database storage, so it shouldnโt rack up too much in costs, but you always have to be careful with cloud services!
The app was orange on black, which was kind of dog-themed, I guess. I didnโt like the way the date picker worked, so I told it to fix it. I didnโt like the way the dog size buttons worked, so I had the AI fix that, too, and made other minor design changes.

A working app!
Maria Korolov / Foundry
How long did this whole process take? As long as it took me to take all the screenshots and write this description of what I was doing. Plus five minutes each time I published it to the web.
So maybe half an hour altogether to get the basic app up and running, plus the time it took to take notes for this article, grab screenshots, and have lunch.
But then I went back and tried adding in functionality where the user logs in and saves information about their dog โ but I couldnโt get the authentication to work. I tried to switch to just a login and password, but couldnโt get that to work either. I also tried to get social sharing buttons working, which was the whole point of publishing the app to the web, and those didnโt work either. I spent an afternoon going back and forth on this. It was very frustrating.
Iโm pretty sure that this is something that a real developer could have handled in seconds. But for a non-developer like me, I was looking at a weekend of trying different things until I found something that worked.
So finally I asked Firebase Studio to rip out all the non-functional features involving user logins, saving doggieprofiles, and social sharing, and was left with the very simple doggie birthday calculator app that I started with โ exactly like the one I found on my phoneโs app store.
Yup, thereโs already an app for that. Maybe Iโm not the supreme genius I thought I was.
Still, this is a functional app. I could embed it into my company website to give my visitors a cute little doggie birthday calculator to use, if I had a company website.
Vibe coding with Lovable
Then I moved on to Lovable.
I pasted in the app description that I got from Claude, the same one I used for Firebase Studio. It produced an app almost immediately, but it just told me how old the dog was, without calculating its next birthday. Thatโs the same thing Firebase Studio did. Maybe I should have read through Claudeโs app description instead of blindly trusting it. Ah, whoโs got time for that?
I asked for a fix. Now Lovable gave me an app that said that my dogโs next birthday would be several years in the past. Thatโs no good โ Iโve already missed it.

Working on an app in Lovable.
Maria Korolov / Foundry
It apologized and reworked the logic.
Then I published the app. No billing information required. And it did not take even five minutes. It took less time than it took me to type this paragraph.
Instant publishing, no waiting. Extremely pretty design. All the functionality I asked for. Even the URL looks neater and cleaner than the Firebase Studio one.
Yes, it just took a couple of minutes to get the basic app up.

From description to nicely designed, functional app in less than five minutes.
Maria Korolov / Foundry
But it was still missing the ability to log in, save profiles of multiple dogs, and other back-end functionality. Did I dare?
I dared.
First, Lovable told me it needed to connect to Supabase, and provided a button for me to click that took me right to where I had to go. I had an option to continue with GitHub or with SSO. I must have created a GitHub account at some point in the past, because I was able to log in. I picked the free Supabase plan, authorized access, and went back to the Lovable tab.
And then I bumped into my first major obstacle. I ran out of the free daily Lovable credits. I could have put a pin in it and returned the next day, but I was on a roll, so I paid $25 for the upgrade. Thatโs $25 a month, so I need to remember to downgrade back to free once Iโm done building this app.
Adding Google and Facebook logins required some authentication steps that I couldnโt figure out how to do at first glance, so I abandoned that idea and just had it use a login and password. And Lovable built it for me.
The login even included a confirmation email so I could confirm that I wanted to create an account on my new website. I didnโt ask for that bit of functionality โ the AI thought of it on its own and just did it. And it built social sharing buttons. And I could save profiles of multiple dogs.
There was a little back-and-forth as I refined my design and the functionality, but mostly I just went with what it gave me.
Just take a look at the final result: the logo, the sign-in button at the top, the color scheme. It did all of that.

The start screen for the final version of the Lovable app.
Maria Korolov / Foundry
It even let me add multiple dogs so I could keep track of all their birthdays.

The Lovable app lets users save multiple dogs and track their birthdays.
Maria Korolov / Foundry
You can try out my app here: https://paw-ty-time-calculator.lovable.app
In the end, I wound up using 14 out of my 100 monthly credits. Prorating my $25, I spent half an hour and $3.50 to build the app. Or, at five free credits a day, I could have done it for free over three days. Which reminds me: I have to go and downgrade back to the free plan before I start racking up monthly bills.
Downgrading means that all my apps will be public and have the Lovable logo on them, and I wonโt be able to have custom domains.
My verdict? If you want to build apps that run on a custom domain, get the $25 plan, but for people just futzing around, the free plan is good enough.
Am I now going to become a full-time vibe coder? No. But if I have another idea for an app, well, I might just go and build it.
Reality check: vibe coding at work
What about that hypothetical โaverage business userโ? As the two platforms I tested currently stand, nontechnical business users can build a simple app with Firebase Studio as long as it doesnโt require creating user accounts or interfacing with other systems. They can build an app with Lovable that looks nicer, goes up faster, and has an email-based login system and social sharing. And itโs possible to do all this on the free plans.
But for anything involving interactions with other platforms, such as authentications or data access, theyโll need IT help. And theyโll likely need IT help if the app breaks at some point down the road.
Hristo Borisov, CEO at Payhawk, a spending management firm, says his company is all-in on vibe coding โ and theyโve already replaced some commercial software with new vibe-coded apps.
โInstead of buying a $70,000-a-year performance management system, we built it from scratch,โ he says, calling the software โbespoke, exactly for what we need.โ
Payhawk still had developers write the app in Lovable, he says, under the direction of someone from the business side. But the entire app took two people a week to build โ without any coding โ and adding a new feature takes just a day.
Factoring in salaries and Lovable costs, it took about $4,000 total, he says, for a custom-made product instead of off-the-shelf software that didnโt quite do what the company needed.
Payhawk hosts the app itself, since it already has the infrastructure and skill set to do so. And because it was a complex project, it required developers, not just business users, to design and build it.
โKeep in mind that youโre generating a function for a product that has many features, different roles, different permissions, different views, and integrations to many internal systems,โ he says. โSo, itโs good to have some supervision of what the end result is.โ
Other apps in use at Payhawk have been written completely by non-engineers, he says, for simpler, non-business-critical functions. When apps require access to sensitive data, IT does have to be involved to ensure that everything is safe and secure, he says.
Gene Kim, the author of a book on vibe coding โ Vibe Coding: Building Production-Grade Software With GenAI, Chat, Agents, and Beyond, scheduled to be released in October โ says that there are two major use cases for vibe coding.
Developers can use it to reduce the time it takes to code projects from months to days, to quickly prototype applications and designs, and to maintain and improve existing applications.
Non-developers can create simple tools for themselves to use and other low-risk applications, or to create prototypes that they can show to developers to explain what they want to have built.
โThe notion that businesspeople can totally write apps for themselves without developers โ I think thatโs going to be further away,โ he says.
Even if the AI can do it, human judgment is still required for more complicated projects, he says. โHow do you make it mission-critical? How do you make it resilient, secure, and so forth? Thatโs where you need professional developers to come in and help if you want to trust that thing. Thatโs where you need someone whoโs done it before.โ




