๐Ÿš€ You've vibe-coded your app. Now what?

ยท 6 min read

Tools like Claude Code and Antigravity have made it really easy to write competent apps. Our CEO at Speakup even started building internal dashboards and tools himself. I think this is super cool. These tools give normal people the ability to build applications with their own vision and in their own way.

But I noticed something: he still needed the NOC team to help deploy the app and get stuff like e-mail and DNS working.

And other times, I had to give some hints, sometimes just hints for the coding agent to work with. Which is a weird experience :).

The app was done, but the infrastructure wasn’t.

And he’s not alone. I keep seeing this pattern in more and more places. Someone builds an app with AI tools over a weekend. They’re excited. They show it to friends, post a screenshot on Twitter. Then someone asks “can I try it?” and reality hits: it runs on localhost.

There are entire jobs around deploying apps, and it is no surprise he struggled with it.

The gap between “it works on my machine” and “it works for real users” is bigger than most people think. None of the infrastructure stuff is hard, exactly. But it’s stuff that AI tools don’t teach you. Claude Code is great at writing React components. It’s less great at explaining why your Nginx config is returning 502 errors after you deployed to a VPS for the first time. Or if nginx is a right fix for your app to begin with.

Mind you, these people never hear of Docker, or think of Docker as ’that one complicated thing that the nerds keep talking about’. And don’t get me started on Git. (Although agents can take care of both with simple instructions.)

What “getting it live” actually involves

A server. Your app needs to run on a computer that’s always on, has a public IP address, and has enough resources to handle your traffic. This can be a VPS, a container platform like Coolify or Railway, or a serverless platform like Vercel or Netlify. The right choice depends on what you built.

DNS. You bought a domain, great. Now you need to point it at your server. A records, AAAA records if you want IPv6 (you should), maybe some CNAMEs. If you’ve never touched DNS before, this is where most people get stuck for the first time. It’s not complicated, but it is unforgiving. One wrong record and nothing works.

HTTPS. Nobody should be using your app over plain HTTP in 2026. You need a TLS certificate. Let’s Encrypt gives you free ones, but you need something to manage them. Caddy does it automatically, Nginx needs certbot, and container platforms usually handle it for you. The point is: this doesn’t just happen.

A database that persists. If your app uses a database (and most do), it needs to survive restarts, crashes, and updates. That means it can’t be an SQLite file sitting inside your container that gets wiped on every deploy. It means backups. Automated, tested backups. The kind you can actually restore from.

Environment variables. Your API keys, database passwords, and secrets should not be in your source code. They should not be in your Git repo. They should be in environment variables that your hosting platform injects at runtime. If you have a .env file committed to GitHub right now, go fix that before you read the rest of this post. Seriously.

Monitoring. How do you know your app is still running? You don’t want to find out from your users. At minimum, you need uptime monitoring that pings your app every few minutes and alerts you when it’s down. Something like Uptime Kuma (self-hosted) or Betterstack works fine.

A deployment pipeline. When you push code to your repo, your app should update automatically. No SSH-ing into a server and running git pull. No manually restarting processes. Most platforms support this out of the box. Connect your GitHub repo and it deploys on push. Coolify does this well, for what it’s worth.

The stuff nobody tells you

Beyond the basics, there are things that only surface once your app is actually live:

Your dependencies will break. That npm package you’re using? It’ll push a breaking change eventually. Pin your versions. Use a lockfile. Don’t run npm install in production without testing first.

Logs matter more than you think. When something breaks at 2 AM (and it will), you need logs. Structured logs. Logs that tell you what happened, when, and why. console.log("here") is not a logging strategy.

Security isn’t optional. Rate limiting, input validation, authentication, CORS headers, CSP headers. These aren’t enterprise concerns. They’re “your app is on the public internet and bots will find it within hours” concerns.

Backups are worthless until you test a restore. Everyone sets up backups. Almost nobody tests restoring from them. Do it once. You’ll sleep better.

Why me

I’ve been doing infrastructure for over 15 years. I started out with simple gaming servers and now manage servers that handle millions of phone calls every week at Speakup.

But I also build stuff myself. I built MailShield, an email security monitoring SaaS, using mostly agentic coding tools. Deployed it on my own Proxmox cluster, on my own network (AS202585). Building it was fast. Getting it production-ready (proper DNS, HTTPS, database backups, monitoring, automated deployments, security), that was the part that took real infrastructure knowledge.

I know both sides. And that’s exactly why I started this.

vibecodesupport

I launched vibecodesupport.eu (English) and vibecodesupport.nl (Nederlands). It’s a service specifically for people who’ve built something with AI tools and need help with the infrastructure side.

Five things I offer:

  • Deploy: I take your project from localhost to production. Domain, DNS, HTTPS, database, security. Fixed price, typically done in 1-2 days.
  • Publish: Built a mobile app? I handle the App Store and Google Play publishing process. Certificates, signing, screenshots, the review process (yes, including the 14-day Android waiting period).
  • Build: Need to connect Stripe, set up OAuth, or integrate an API that Claude can’t quite get right? I do targeted feature work.
  • Host: Monthly hosting on Dutch infrastructure with monitoring, backups, security updates, and actual human support. Starting at 25 euro per month.
  • Fix: Something broke and you don’t know where to start. Deployment failures, database issues, the classic “it works locally but not in production.” Usually resolved the same day.

Everything runs on infrastructure I own and manage in the Netherlands. Not a hyperscaler, not a shared host. If something goes wrong, you’re talking to the person who runs the servers. Not a support ticket queue.

Getting started

If you’ve built something and you’re stuck on the “now what” part, send me your repo or describe what you’ve built. I’ll tell you what it needs and what it’ll cost. The initial assessment is free.

vibecodesupport.eu โ€” vibecodesupport.nl โ€” info@bouwhuisit.nl

If you know someone who needs this, share it with them. There are a lot of people building apps with AI tools right now. Somebody needs to help them ship.