You have questions. I have answers!
This is going to be long. But hopefully it'll be useful!
Getting Started
Do I need to know how to code to start vibe coding?
Nope! I didn't know how to code when I started. The tools available now make it possible for anyone with an idea to build something real.
What equipment or setup do I need?
A computer with internet access. That's really it!
Can I vibe code on my phone?
Yes! Tools like Rork and Vibecode are specifically designed for mobile app development right from your phone. You can also use the web interfaces from tools like Lovable, Bolt, or Anything on mobile. It's definitely possible to build real projects on your phone now.
What should my first project be?
Something small and fun! I wouldn't suggest trying to build the next big startup on day one. Here are my suggestions:
- Build something silly
- Build something for yourself
- Build something that makes you laugh.
My early projects were simple things that I just wanted to exist. The goal of your first project should be to finish it, not to change the world.
How do I come up with ideas?
Ideas are everywhere once you start looking! Sometimes I sit down and dump my random thoughts into ChatGPT and let it ask me questions to flesh things out. But honestly, ideas come from frustration (something that annoys you that you wish worked differently), curiosity (what if this existed?), and just noticing things in your daily life. The more you build, the more ideas you'll have. It's like a muscle that can get stronger!
What if I'm not creative?
Oh, come on. Everyone has ideas. You might just not be used to paying attention to them yet. Start writing down every random thought you have about things you wish existed, problems you encounter, or things that would be funny. You'll be surprised how quickly the list grows.
How long does it take to build something?
It depends on what you're building! I've shipped simple projects in under an hour. More complex stuff might take a few days or a week. One of the beautiful things about vibe coding is how fast you can go from idea to working prototype. You're not spending months in development before you see results.
How much does it cost to get started?
Most tools don't have completely free tiers, but there are low cost options to get started! Here are some of the most affordable entry points:
Bolt starts at $20/month for 10 million tokens, and they have a limited free tier with 150,000 tokens per day.
Vibecode starts at $20/month for the Plus plan with credits that roll over and never expire.
Replit starts at $20/month for the Core plan, which includes $25 in usage credits. They also have a free Starter plan for experimenting.
Cursor starts at $20/month for the Pro plan with $20 of frontier model usage.
Lovable starts at $25/month for the Pro plan with 100 credits, and they have a limited free tier with 5 daily credits.
Rork starts at $25/month for the Junior plan.
You can definitely start experimenting without spending a ton, and many tools offer free trials or limited free tiers to get you started!
Tools
What's the best tool to start with?
It depends on what you're building, but here's my full tech stack:
Lovable for websites or web apps. Makes it really easy to spin them up quickly with their own AI gateway and backend (rebranded Supabase).
Google AI Studio for fun prototypes. Really easy to incorporate Gemini APIs, but harder to actually publish (for now. I've been reassured that they're working on this.)
Bolt for slightly more complicated websites/web apps/apps. For when you need access to the terminal.
YouWare for websites and web apps. Lets you choose your model, and has an integrated backend product in YouBase.
Replit for kind of in-between projects.
Anything for websites/web apps/mobile apps. Backend included, and makes publishing to the App Store easy.
Cursor for anything you can think of.
Anthropic Claude Code. Useful even when you aren't working with code. Ask it to organize your files.
Rork Vibecode and Natively for mobile apps.
Wabi for mini apps
GitHub for obvious reasons (Very useful for everything. If you're starting out, I recommend thinking of it like a gateway between your code and your deployment/hosting provider.)
Netlify for deploying and hosting. Here's an example: you're building in Cursor, you commit and push to GitHub, you start a new project in Netlify and adjust your settings so your project auto deploys every time you commit a change to GitHub. Easy!
ChatGPT for brainstorming, collecting my thoughts, occasionally PRDs.
Nano Banana Pro assets for your projects. Images, icons, etc.
Canva pro for their magic erase tool, and background removal tool. Use magic erase to remove image model watermarks, use the background removal tool to remove backgrounds and create transparent pngs. Also great for making favicons and open graph images.
Convex for databases
Supabase also for databases
Namecheap for domains
Google Fonts for fonts (yes, you need to change the default font on your site)
Coolors for coming up with color palettes.
Mobbin and Dribbble for design ideas.
Why are there so many tools?
Because different tools are good at different things! Some are better for quick prototypes, some are better for mobile apps, some give you more control. It's actually great that there are so many options because you can pick the right tool for what you're trying to build.
Do I need paid subscriptions?
Not necessarily (to start)! Some tools have limited free tiers that are enough to experiment and learn. As you get more serious, paid subscriptions give you more features, higher usage limits, and better support. I'll be honest, I have subscriptions for pretty much every tool at this point, but I built up to that over time.
How do I know which tool is right for my project?
I personally start by asking myself a few questions:
- Who is the target audience for this app?
- What is the core functionality?
The answers help me decide if I should build a website, web app, or mobile app. For instance, if my target audience is teenagers, I might choose to build a mobile app. If the idea doesn't translate well to mobile, or isn't something I want to spend a ton of time on, maybe I'll choose a web app.
Then I look at my tool list and weigh my options. Simple website? Lovable. Mobile app? Vibecode or Anything. Something complex? Cursor.
Before I start, I do a quick check: can I actually build my entire idea with this tool? It's terrible to get halfway through and realize it isn't possible.
Can I switch tools mid-project?
Sometimes! It depends on how far along you are and what you're switching between. Vibe coding moves fast enough that starting over with a different tool isn't always a huge setback. I've definitely abandoned projects in one tool and rebuilt them in another when I realized the first tool wasn't the right fit.
What is Claude Code?
Claude Code is Anthropic's command line tool for agentic coding. It lives in your terminal, understands your codebase, and helps you code through natural language commands. It's incredibly powerful for more complex projects, and honestly, it's useful even when you aren't working with code. I've asked it to organize my files!
What is Ralph Wiggum?
Ralph Wiggum is a Claude Code plugin that lets the AI work autonomously in a loop. You give it a task, and instead of stopping when it thinks it's done, it keeps iterating on its own work until the task is actually complete. It's named after Ralph Wiggum, from The Simpsons. The philosophy is basically "iteration beats perfection." You let it fail repeatedly until it succeeds. It's pretty wild for bigger projects because you can set it up and let it run for hours, improving its own output along the way.
Technical Stuff (Explained Simply)
What's the difference between a website and a web app?
A website is mostly static content that people read or look at, like a blog or a portfolio. A web app is interactive, where users can do things like log in, save data, or interact with features. Think of the difference between a restaurant's menu page (website) versus an app where you can actually order food and track your delivery (web app). The line can be blurry!
What is a database and do I need one?
A database is where your app stores information. If your app has users, or if people can save things, or if you need to remember anything between sessions, you probably need a database. Tools like Supabase and Convex make this pretty easy to set up. If you're just building a simple static site with no user accounts or saved data, you might not need one.
What is an API?
API stands for Application Programming Interface. It's basically a way for different software to talk to each other. When your app needs to get data from somewhere else (like weather information, or payment processing through Stripe), it uses an API to request and receive that data. Most vibe coding tools make it pretty easy to connect to APIs, but always read the actual documentation for any API you're using! AI can hallucinate capabilities that don't exist.
What does "deploying" mean?
Deploying is when you take your project from "working on my computer" to "live on the internet where other people can use it." It's the step that makes your project real and accessible to the world. Tools like Netlify make this pretty straightforward.
What is GitHub and why does everyone talk about it?
GitHub is where you store your code. Think of it like a backup system that also tracks every change you've ever made, lets you roll back to previous versions if something breaks, and makes it easy to deploy your projects. If you're starting out, I recommend thinking of it as a gateway between your code and wherever you're hosting your project. Use it! It will save you.
What are edge functions?
Edge functions are code that runs on servers close to your users (at the "edge" of the network) rather than in one central location. They're useful for things that need to happen on the server side, like processing data securely or talking to APIs with secret keys.
Tools like Supabase have edge functions built in. When you're debugging, checking your edge function logs is just as important as checking your browser console.
What is Row Level Security?
Row Level Security (RLS) is a way to make sure users can only see and access their own data. Without it, someone could potentially see other users' information, which is bad! If your app has users and a database, enable RLS. It's essential for protecting your users. Most tools can guide you through setting it up if you ask.
How do I get a custom domain?
Buy one from a domain registrar like Namecheap, then follow your hosting provider's instructions to connect it. You don't need a custom domain, especially when you're starting out, but it does make your project look more polished. At minimum, change the default subdomain your tool assigns to something that actually fits your project.
What are Open Graph tags?
Open Graph tags control how your project appears when someone shares it. The title, description, and preview image that show up when you paste a link on social media or in a text? Those come from Open Graph tags. Leaving them as defaults makes your project look unfinished. Most tools let you update these in project settings, or you can prompt your tool to change them directly.
The Building Process
How long do you spend on a single project?
It varies wildly! Some projects I've finished in a few hours. Others have taken a week or more. On average, I'd say most of my projects take a few days from idea to shipped. But I also don't pressure myself to spend a certain amount of time. Some ideas deserve more time than others.
How do you know when a project is "done"?
Honestly? When it does the thing I wanted it to do and I'm happy with how it looks. Perfectionism is the enemy of shipping. I'd rather put something out there that works and looks decent than spend forever polishing something nobody ever sees. You can always iterate later if people actually use it!
What do you do when you lose motivation?
I take a break or switch to a different project. Forcing myself to work on something I'm not excited about doesn't produce good results. Sometimes stepping away for a day or two is all I need to come back refreshed. And sometimes a project just isn't meant to be finished, and that's okay too.
How many projects have you abandoned?
A lot! I've built 40+ projects, and plenty of them never saw the light of day. Some I abandoned because I lost interest. Some because I realized the idea wasn't as good as I thought. Some because I hit a technical wall. It's all part of the process. Not everything needs to be finished.
Do you ever go back to old projects?
Sometimes! If I get a new idea for an old project, or if people start asking about something I built a while ago, I might revisit it.
How do you stay organized with so many projects?
GitHub helps a lot. Each project gets its own repository, so everything is separated and backed up. I also keep notes in ChatGPT about ideas and next steps for various projects.
When Things Break (Debugging)
What do I do when something breaks?
Don't panic! Errors are part of the process. Here's my approach:
First, isolate the problem. Does the bug happen on every page, or just one? Does it happen for all users, or just some? Did it work before, and if so, what changed? The more specific you can get about what's actually broken, the faster you'll fix it.
How do I read error messages?
Error messages look intimidating, but they usually tell you exactly what went wrong and where. Check your console logs in your browser (right click, inspect, console tab) for JavaScript errors. Check your edge function logs for server-side errors. Read the actual message! If you need help understanding what it means, paste it into ChatGPT or Anthropic Claude or Gemini.
Should I ask for more detailed logging?
Yes! You can ask your vibe coding tool to add more detailed logging, especially when you're working on something complex. Your tool will often suggest this after you've been stuck for a while, but you can be proactive about it. It makes debugging way faster when you can actually see what's happening at each step.
What if the built-in chat can't figure it out?
Go to an external AI chat. Copy your error logs, paste them into ChatGPT or Anthropic Claude or Gemini, and start a conversation. But here's the key: don't just ask "fix this." Ask "what is happening here and why?" Understanding the bug helps you avoid it next time and helps you catch when the AI gives you a fix that doesn't make sense.
What if I've tried everything and I'm still stuck?
Take a break! Some of my worst debugging spirals happened because I refused to step away. Walk away. Get water. Come back in 20 minutes. The bug will still be there, but you'll see it with fresh eyes. And if you're really stuck, post about it! The vibe coding community is incredibly friendly and someone has probably seen the same issue before.
Design
Do I need to be a designer?
No! But you do need to pay attention to design. The design of your app is the first thing a user sees. And users will not take you seriously if your app looks like every other obviously vibe coded app. Plus, design is fun to play around with!
How do I make my project not look generic?
Here are the big ones:
Change the font. The default is usually Inter. Do not keep Inter. Go to Google Fonts and pick something else. Seriously, anything is better than Inter. You can prompt most tools to use specific Google Fonts, or download a .ttf and upload it.
Remove gradients. They're a common default that vibe coding tools generate. I honestly don't trust myself with gradients, so I just eliminate them entirely.
Avoid blue and purple colors. Another default that shows up everywhere. Go to Coolors to find a new color palette instead.
Reduce rounded edges. They're very common in vibe coded projects. You don't need to eliminate them entirely, but try some squared edges occasionally.
Remove emojis. They rarely fit well into the overall design and they're a clear giveaway that your app is vibe coded.
Where do I get design inspiration?
Dribbble and Mobbin are great! Browse for a while, screenshot designs you like, and paste them into an AI tool to ask how to describe those elements in developer terms.
What about favicons?
Don't forget them! Almost every AI coding platform has its own default favicon, and leaving it there screams "I didn't finish this." A custom favicon takes minutes to create (Canva plus Nano Banana makes it easy) and instantly makes your project feel more polished.
Hackathons
How do I find hackathons?
Twitter. Most hackathons are posted here. At least once a week, I do targeted searches including visiting the profiles of all major vibe coding tools. Then I search for keywords like "vibe coding," "vibe coders," "hackathon," "vibe coding competition," "vibe coding contest," and "ai coding."
Contra. Sign up for an account. They're always running fun challenges with great sponsors and cash prizes.
Reddit. The subreddits /r/vibecoding, /r/vibecodersnest, /r/hackathon, and /r/vibecodedevs often have smaller competitions. I've won prizes from competitions I found through Reddit posts!
Web search. Keywords like "vibe coding hackathon," "vibe coding competition," etc. Don't forget Boolean operators.
Community. I have great friends who tag me in hackathons. Post about your work, and you'll develop that community too!
Do I need experience to enter a hackathon?
No! Everyone starts somewhere. Hackathons are actually a great way to learn because they give you a deadline, a specific constraint, and motivation to finish something. Your first hackathon submission doesn't need to win. It just needs to exist.
What if I don't win?
Then you don't win! And that's totally fine. You still built something, you still learned, and you still have a project to show for it. Don't take competing too seriously. How you place in a hackathon will not make or break you as a person.
Are hackathons worth the time?
Absolutely! They're one of the fastest ways to improve at vibe coding and ship quickly. The time pressure forces you to make decisions and finish things. Plus, you might win prizes, and you'll definitely meet other builders.
How do I win hackathons?
One thing people fail to realize about sponsored hackathons is that they're ultimately marketing for the sponsoring company. These companies want to show off the capabilities of their products. You want the judges to stop and say "Wow! You can do that with _____?"
Think outside the box. Everyone else will be building a useful SaaS. Build something that stands out.
Focus on details. A product with 1 really well executed feature and great UI/UX will beat a product with 3 badly executed features and poor UI/UX.
Polish matters. Buy a custom domain if you can. Update your favicon and Open Graph tags. These small things show you've put in extra effort.
Listen to the judges. If there's a fireside chat or roundtable where judges discuss what they want to see, sit down and pay attention!
Community and Sharing
How do I find other vibe coders?
Post about what you're building! That's honestly the best way. Twitter has a huge vibe coding community. The subreddits I mentioned earlier are also good. And if you're lucky enough to have local events (like Cafe Cursor or similar meetups), go to them!
If you're in San Diego, I host events for the vibe coding and AI community here! And I'm open to hosting events all around the world. Stay tuned for some in San Francisco coming up soon!
Is the vibe coding community welcoming to beginners?
Very! One of the things I love about this community is how supportive it is. People share tips, answer questions, celebrate each other's wins. Don't be afraid to ask for help or post about your first project.
Mindset and Fears
What if I'm too old/young to start?
You're not. I've seen people of all ages get into vibe coding and build amazing things. There's no age requirement for having ideas and making them real.
What if my project is embarrassing?
Ship it anyway! Some of my most "embarrassing" projects have been the most fun and the most memorable. A clone of Google Drive called Not Drive? A website where strangers vote on what I should do with my month? A receipt printer that accepts messages from the internet? None of these are "serious" and all of them brought joy to people.
Is it too late to get into vibe coding?
No! The tools are getting better every day, which means it's actually getting easier to start. There's no "you missed the boat" moment here. People are just beginning to understand what's possible.
What if I start and realize I hate it?
Then you stop! You'll have lost nothing except a little time, and you'll have learned something about yourself. But I suspect if you give it a real try, you won't hate it. Building things is genuinely fun once you get past the initial learning curve.
Am I allowed to call myself a builder if I use AI?
Yes! I think "builder" is actually the best term we have right now for vibe coders. You're building things. The fact that you're using AI tools to do it doesn't make it less real. Traditional developers use tools too. They use frameworks and libraries. And honestly, a lot of traditional developers are vibe coding now too! We all just use different tools. The output is what matters, and if you're creating things that work and that people use, you're a builder.
Is vibe coding "real" coding?
This question comes up a lot, and honestly, I think it's the wrong question. Vibe coding produces real software that real people use. Whether or not it counts as "real coding" by some traditional definition doesn't really matter. The gatekeeping around this is silly. If you're making things that work, you're making things that work.
Money and Career
Can vibe coding become a career?
It can! There are a few paths I've seen:
Hackathons. Prize money is real money! I've won $5,800 from hackathons so far.
Freelance and consulting. Yes, people will pay you to build things for them. I've personally consulted and been employed on contract as a vibe coder, and I've vibe coded pieces to land these jobs. It's real!
Building and monetizing your own apps. I haven't done this yet personally, but plenty of people are making money from apps they've built.
Content creation. Sharing your journey, teaching others, building an audience.
I'm still early in figuring out the career side of this, but the opportunities are definitely there.
Should I try to get a job in tech?
That's up to you! Vibe coding can definitely be a stepping stone into tech if that's what you want. The skills you learn, problem solving, working with APIs, understanding how software works, are all valuable. But it can also just be a creative outlet or a side hustle or a way to build things for yourself. There's no one right path.
How do people make money from this?
Hackathon prizes, freelance/consulting work (including actually being hired as a vibe coder!), monetizing apps (subscriptions, one-time purchases, ads), and content creation are the main ones I've seen. Some people also use their vibe coded projects as portfolio pieces to land traditional tech jobs.
Can I freelance as a vibe coder?
Yes! People need apps and websites built, and if you can deliver something that works and looks good, they don't necessarily care how you built it. The key is delivering results.
Philosophy and Big Picture
What's the point of building something nobody will use?
A few things! First, you don't actually know what will resonate until you ship it. I've been wrong many times about what would take off and what wouldn't. Second, even "useless" projects teach you things. Every weird thing I've built has taught me something I used later. Third, building is fun! If you enjoyed the process, the time wasn't wasted even if nobody else ever sees it.
I wrote a whole article about why I vibe code things nobody asked for! The short version: the projects nobody asked for often end up being the ones people remember.
Is vibe coding just a trend?
I really don't think so. The underlying shift (AI making it possible for non-technical people to build software) isn't going away. The specific tools might change, but I believe the ability to turn ideas into working software without years of coding experience is here to stay.
Will AI replace vibe coders eventually?
Maybe AI will eventually build entire products without human input. But I think there will always be value in the human side: having the idea, understanding what people want, making creative decisions, and putting your personality into what you build. Even if AI does all the technical work, someone needs to direct it. That's us!
What makes a project "successful"?
For me, a project is successful if I enjoyed building it. If other people enjoy using it, that's a bonus! I try not to measure success purely by numbers. Some of my favorite projects have had very few users. Some of my most "successful" by the numbers weren't really my favorites to build.
When you remove the pressure of perfection and success, you get to enjoy what's left: building.
What if my idea already exists?
Build it anyway! Your version will be different because you're different. Maybe you'll find a unique angle, or maybe you'll just have fun making your own version. Not everything needs to be original. Some of my favorite projects were intentionally unoriginal (looking at you, Not Drive).
What if nobody uses what I build?
That's okay! Most things I build don't get thousands of users. But every project teaches me something, and occasionally one does take off in a way I didn't expect. You can't really, truly predict what will resonate. The only way to find out is to ship.
Final Thoughts
If there's one thing I hope you take away from all of this, it's that you can start vibe coding right now.
I personally started vibe coding in June 2025 with basically no experience. Now I've built 40+ projects, won four hackathons, and honestly changed my entire life. I'm not special, I’m just having fun.
You can do the same thing. Start building. See what happens!
And if you have questions I didn't answer here, come find me. I'm always happy to help!