The original is one click away. Open original ↗
A structured three-step process for building apps with AI
Executive overview
AI-assisted development breaks down when builders let the AI take too much control and lose track of what's happening and why. The fix is a structured workflow that keeps the AI anchored to a macro vision while executing in tight micro steps.
Three phases — preparation, design, and control — address the core failure modes: context loss, unstructured prompting, and session drift.
Preparation: the implementation plan
- Create a PRD (Product Requirements Document) as the macro reference the AI always returns to.
- Structure: product overview (3–5 sentences), tech stack, functional and non-functional requirements, future enhancements, best practices.
- For enterprise apps, replace vague phases with prescriptive micro steps — each with checkboxes the AI marks off as it progresses.
- Break the build into phases where each phase produces a small end-to-end working application (backend connected to frontend, APIs functional).
- Start each phase with tests written before the feature is built — failing tests give the AI specific feedback to self-correct, avoiding repeated errors.
- Non-functional requirements (performance, security) get the same micro-step treatment and are tested against the same test suite.
Design: voice-first UI iteration
- Use a Claude project (e.g. "app designer") to generate a design doc from a dictated vision of the app.
- Feed the design doc into the same Claude project to produce a React mockup; iterate on it by dictating changes while viewing screenshots.
- Roughly 80% of UI iteration time is voice — faster than typing, and AI handles the speech-to-text-to-code loop effectively.
- Transfer the screenshot and code to Bolt.New to polish the frontend; Bolt is strong at UI and weak at full-stack, so use it narrowly.
- Bolt.New can deploy a mockup to Netlify — useful for sharing with users before any real backend is built.
- Total design phase: roughly 1–3 hours depending on complexity.
Control: keeping Cursor on track
- Add the implementation plan to Cursor's Notepad feature rather than a plain markdown file — it focuses the model more reliably than cursor rules alone.
- Cursor rules (
.cursorrules) are useful but inconsistent; Notepad is the more reliable anchor. - After every 3–5 Composer Agent exchanges, re-attach the master plan via Notepad to reset context.
- Context drift — the AI gradually forgetting earlier decisions or repeating errors — is the primary failure mode in long sessions.
- Counter drift with handoffs: ask the AI to write a full handoff prompt (errors, nuances, code snippets, relevant files) as if briefing a new engineer with zero context. Paste that into a fresh session.
- Chain handoffs across sessions to preserve continuity without relying on a single long conversation.
The macro-micro loop
- The unifying principle across all three phases: always return to the macro after each micro iteration.
- Build something small → test it → verify it works → check off the step → return to the macro plan → repeat.
- This loop is what allows AI to build robust applications without losing the thread.
More like this — when you're ready for early access.
Join the waitlist for a personal account and content recommendations based on what you're working on.
No spam. Unsubscribe at any time.
You're on the list. We'll be in touch before launch.