Back to blog
5 min read

How I Build Everything with Cursor AI

My workflow for turning ideas into working projects using AI-assisted development.

AIWorkflowCursor

The Shift

A year ago I wrote every line of code by hand. Today, 90% of my projects start with a conversation. Not with a colleague — with an AI agent inside my editor.

I use Cursor as my primary IDE. It's VS Code under the hood, but with an AI layer that changes how I think about building software. Here's my actual workflow.

Step 1: Start with a Vision Document

Before I write any code, I write a plain-English document describing what I want to build. I keep these in an ai-docs/ folder:

  • vision.md — what the project does, who it's for, what pages/features it has
  • style-guide.md — colors, fonts, spacing, component patterns
  • screens/ — ASCII wireframes for each page

This isn't documentation for humans. It's context for the AI. When I reference these files in chat, the agent understands the full picture.

Step 2: Rules, Agents, and Commands

Cursor supports .cursor/rules/ files — persistent instructions that shape how the AI writes code. I set up:

  • general.mdc — coding standards (TypeScript strict, no any, conventional commits)
  • design.mdc — design tokens and component patterns
  • project-structure.mdc — where files go

I also create subagents — specialized prompts for different tasks:

  • /implementer — builds features following project conventions
  • /reviewer — reviews code quality (read-only)
  • /designer — focuses on visual polish and animations

Step 3: Plan Mode First

For any non-trivial feature, I switch to Plan mode. Instead of jumping into code, the agent:

  1. 01Analyzes the codebase
  2. 02Proposes a plan (which files to create/modify)
  3. 03Asks clarifying questions
  4. 04Waits for my approval before executing

This catches bad assumptions early. Once I approve, I switch to Agent mode and let it execute.

Step 4: Iterate Fast with Checkpoints

Every change creates a checkpoint. If the agent goes down a wrong path, I revert to the last good state with one click — no git gymnastics needed.

I typically go through 5-10 iterations per feature:

  1. 01Build the skeleton
  2. 02Review, adjust
  3. 03Polish the UI
  4. 04Review again
  5. 05Ship

What I've Built This Way

  • Music Recognizer — a Python app that identifies songs from system audio using Shazam's algorithm
  • Lichess PiP — a browser extension for picture-in-picture chess viewing
  • NearbyRoutes — a React app for finding local walking routes
  • This very website — built from scratch in a single session

The Honest Take

AI doesn't replace thinking. It replaces typing. I still make every architectural decision, every design choice, every UX tradeoff. But the mechanical work — scaffolding, boilerplate, CSS tweaking, data formatting — that's where AI saves hours.

The key insight: the better your instructions, the better the output. Writing clear vision docs and rules isn't busywork — it's the actual engineering. The code is just the artifact.

My Setup

  • Editor: Cursor (VS Code fork)
  • AI Model: Claude (via Cursor's built-in integration)
  • Rules: Custom .mdc files for each project
  • Version Control: Git with conventional commits
  • Deploy: Vercel

If you're still writing every line by hand, you're not slower — you're just spending time on the wrong things.

No track playing

331 tracks available

Queue · 0 tracks