Gabe Perez

Vibe coding process - do we jump in or plan it out?

byโ€ข

I'm super curious how everyone starts to vibe code? In the beginning I would simply jump into @bolt.new or @Cursor and just do a prompt and continue refining with the AI. I quickly realized this created a lot of issues as I didn't think about the structure, tech stack, and how I wanted the features to interact with each other and how the way I was building things would impact the user experience. I now do the following:

  • Write down a simple problem statement: "what am I trying to solve?"

  • Write down a simple solution statement: "what does the thing I'm building do (to solve the problem)"

  • Share the above with @ChatGPT by OpenAI and word vomit my thoughts, ideas, how I want the user to interact with my app, etc and ASK ChatGPT to turn everything I said and want into an easy to understand directive and instructions for an Engineer.

  • I then take the Engineer instructions and give it to a new chat in ChatGPT and ask it to turn those instructions into a prompt for an AI engineer and to break up the project into sections so that each time we focus on a section the app is shippable and keeps things easy to work on.

  • I take the output and paste it into my notes. I then give it to Cursor.

  • Once in Cursor, I create a new project folder and got at it!

Curious what everyone else does and if you've experience any things to avoid or must do

951 views

Add a comment

Replies

Best
Charlie Reagan

Great workflow! I would only add:

1.) Dont be afraid to bring in other opinions early (Claude, Gemini, Grok) to validate/question the approach. Lots can be learned here, saving you days (weeks?) of frustration later. Worth spending a few hours. Ive seen GPT recommend an approach that was outdated by a few months - Grok caught the issue and directed me to a new SDK that GPT wasn't aware of.

2.) Cursor rules (.mcp)

3.) Feed your agent official documentation for the tech stack you are building in. Your AI Agent will absolutely lie to you and tell you its read the documentation. Pro -tip: It hasn't, lol.

Chris Messina

Measure twice, cut once as they say!


Thinking about what you're trying to do, writing it down, and then iterating on it is probably the best way to be productive, rather than using the hunt-and-peck method of coding.


Slow is fast, as they say.


What you're describing also sounds like the Reasoning step that LLMs now use to plan out their next steps โ€” so if it's good enough for LLMs, it should be a lesson to humans too!


Lastly, maybe give ChatPRD a try?

Gabe Perez

@chrismessinaย very well said. I loled cause "hunt-and-peck" was definitely how I started. Maybe the LLMs influenced my process. Will def try ChatPRD! Have you used it?

Chris Messina

@gabeย Haven't had a use case yet, but it's @cvolawless's thing โ€” and it seems like it's gaining significant traction since I last hunted it: @ChatPRD!

Parth Ahir

Totally relate to the part about dumping all your ideas into ChatGPT firstโ€”I do the same. It helps so much to just get the chaos out of your head and let the AI turn it into a clean plan. Makes jumping into Cursor way less overwhelming.


Gabe Perez

@parth_ahirย yeah, agreed. de-chaos thoughts, then give them to Eng (aka Cursor).

Natasha Shebek

Just plan it out pls, no one needs more tech debt and someone snooping in their data or being a proxy for bad actors or data waiting to be added to some shady DB someone will sell for a quick buck. The quick buck quest has given way to bad practices in hiring and misuse in employment, everyone is unemployed and soon no one will be able to buy your stuff. This way you are just helping to big bros and small biz is screwed up. Ofc they give AI credits to โ€œinnovativeโ€ startups - they will just suck you all in and throw you away. Be empathetic and aware of the effect of โ€œfast shippingโ€ and the hype around it.

Ambika Vaish

@gabe Love this breakdown. Super helpful for someone like me, ust kicked off a 30-day build with zero coding experience, trying to turn an idea into something real with AI as my co-pilot.

At first I was all in on the โ€œjust prompt and goโ€ vibe, but I hit walls fast. Iโ€™ve started doing something similar: framing the problem clearly, rough-sketching how the flow should feel, and using ChatGPT to translate my chaos into semi-logical steps.

Still early days, but this thread is helping me rethink how to keep things focused without killing momentum. Appreciate you sharing your process, bookmarking this for every future panic spiral.

andrea stivala

usually when i vibe code i do it for work on my thesis project in python data analysis, i created an app that uses my scripts in a user friendly way, to do that i used cursor, integrating a defined and niche specific .cursorrules file and also recently i updated a new version of memory-bank-cursor repo that uses also task master for task generation and subsequent buiding. this system helps me having a very good workflow with memory of my project constantly saved in order to make the AI more context aware and make it easier for it to generate working code having accurate step b step instructions. of course this method wont create you the final app of your dreams, but for sure you will have a solid starting point or even an MVP depending on your goals and difficulty of the concept

Hope i helped you!


Mida

Hey, super agree with your points, as a backend engineer (in the past, now I'm an engineering manager), I believe every vibe coder has to understand data flow and storage at the conceptual level. You can always rewrite frontend logic or tweak the UI, but once your customers start using the product and you realise a week later that the data model isnโ€™t right, migrating it becomes a real headache, and no AI tool can save you from that ๐Ÿ˜€.

It might sound simple, but you must understand how your project works and be able to explain the data flow to someone else.

Curious to hear your opinion, I might be biased by my backend experience

Andres Vlaeminck

I completely agree with your approach to structure before coding. The most critical step that's often overlooked in vibe coding is defining a solid architecture before writing your first prompt.

What I've found essential is maintaining strict control over this architecture - don't let Cursor or any AI make architectural decisions on the fly. When the AI suggests structural changes, take significant time to evaluate them before implementation. The fundamental challenge with vibe coding is that its default objective is "make it work at any cost" rather than "build something scalable, maintainable, and modular."

This distinction became crystal clear when I built my document retrieval system. I've spent over a year developing an internal API that offers a fundamentally different approach to document retrieval - moving beyond traditional vector or full-text search to an AI-first methodology. While I never initially planned to release it publicly, I recently decided to test vibe coding by building an admin UI for this API.

The results were honestly astonishing - in just one week I was able to complete the entire frontend system for https://spyk.io. However, it's important to note that the AI didn't write any backend code (except adding documentation comments). The core functionality required careful human architecture and implementation.


The key takeaway: stay ahead of the AI, understand every piece of your codebase, and maintain control over why things are built a certain way. When you establish these guardrails, the speed at which you can ship becomes truly remarkable.

Nils Blum Oeste

For me it depends... of course! ๐Ÿ˜‰

@Cursor with a thinking model is able to figure out a lot on its own meanwhile. But I put dedicated project cursor rules in place to guide it. They keep evolving and get expanded over time, they might for example including instructions on which testing framework to use, what copy I want in the app or instruction to avoid pitfall with some libraries (e.g. when it tends to use a deprecated or even abandoned API).


In addition to that, I really like to work with it like I would with a team. What I mean by that is that I create markdown artifacts for the product roadmap, feature requirements and all kind of other documents. Then I include these in the context as needed, or have Cursor operate on them ("Group features from this or that markdown and create a sequence of 4 releases").

I try to stay within Cursor most of the time though, just because it is a great workflow, the standard models are powerful enough and the UI/UX also works for me, especially with the inclusion of markdown files for output and input (in addition to Cursor's own history in the Chats, which are hard to manage over time and become too messy).

And one other super useful technique is to tell the agent to ask any questions it might have before making changes. This gives it an opportunity to get missing information from the user instead of making (bad) assumptions, so it can play a more active role in gathering requirements easily as well. ๐Ÿ’ช

Richa Sharma

Hi Gabe,
Love this breakdown โ€” it really resonates!

I used to jump straight into prompting too and ended up in this messy loop of rework and confusion. What changed the game for me was switching to a workflow tool that mirrors the exact structure you're describing โ€” it's called Vybcoder.

It simplifies the "plan โ†’ prompt โ†’ build" cycle into 3 clean steps:

๐Ÿ”น PLAN: I define the problem + goal in plain English, select only the files/folders that matter, and Vybcoder helps convert this into a precise AI prompt.

๐Ÿ”น GENERATE: I run that prompt on my preferred AI (GPT-4o, Claude, Geminiโ€”youโ€™re not locked in), and the responses are way sharper thanks to better planning.

๐Ÿ”น APPLY: Vybcoder parses the AI output and updates multiple files instantly, safely, and locally. No manual edits. Just apply and move forward.

Itโ€™s great because I stay in control while getting consistent structure. Plus, itโ€™s repo-native, cross-platform, and doesnโ€™t force me to change how I code โ€” just enhances it.

Curious to know if anyone else here has tried structured prompting with file context? Itโ€™s been a game-changer for me.
https://www.producthunt.com/products/vybcoder?utm_source=other&utm_medium=social
Itโ€™s built for devs, indie builders, and anyone who wants to move fast without losing control of their code.

Would love your thoughts, feedback, or questions!

๐Ÿ”— https://vybcoder.com