I vibe-coded a dog birthday app. We still need developers.

5gDedicated

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.

srcset=”https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-04-firebase-studio-link-to-billing-account.jpg?quality=50&strip=all 674w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-04-firebase-studio-link-to-billing-account.jpg?resize=201%2C300&quality=50&strip=all 201w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-04-firebase-studio-link-to-billing-account.jpg?resize=466%2C697&quality=50&strip=all 466w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-04-firebase-studio-link-to-billing-account.jpg?resize=112%2C168&quality=50&strip=all 112w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-04-firebase-studio-link-to-billing-account.jpg?resize=56%2C84&quality=50&strip=all 56w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-04-firebase-studio-link-to-billing-account.jpg?resize=321%2C480&quality=50&strip=all 321w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-04-firebase-studio-link-to-billing-account.jpg?resize=241%2C360&quality=50&strip=all 241w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-04-firebase-studio-link-to-billing-account.jpg?resize=167%2C250&quality=50&strip=all 167w” width=”674″ height=”1008″ sizes=”(max-width: 674px) 100vw, 674px”>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!

srcset=”https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-05-firebase-studio-publishing.jpg?quality=50&strip=all 704w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-05-firebase-studio-publishing.jpg?resize=300%2C266&quality=50&strip=all 300w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-05-firebase-studio-publishing.jpg?resize=189%2C168&quality=50&strip=all 189w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-05-firebase-studio-publishing.jpg?resize=95%2C84&quality=50&strip=all 95w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-05-firebase-studio-publishing.jpg?resize=541%2C480&quality=50&strip=all 541w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-05-firebase-studio-publishing.jpg?resize=406%2C360&quality=50&strip=all 406w, https://b2b-contenthub.com/wp-content/uploads/2025/07/vibe-coding-05-firebase-studio-publishing.jpg?resize=282%2C250&quality=50&strip=all 282w” width=”704″ height=”625″ sizes=”(max-width: 704px) 100vw, 704px”>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.”

More on vibe coding:

Vibe code or retire

What you absolutely cannot vibe code right now

Knowing when to use AI coding assistants

AI coding tools can slow down seasoned developers by 19%

OpenAI’s o3 price plunge changes everything for vibe coders

When everything is vibingIT buyers are investing in AI PCs — with no clue how to use them – ComputerworldRead More