Back to YouTube
Parker RexSeptember 16, 2024

I Built an Apple Notes MVP in 5 Minutes Using V0 (2025 is DOPE)

I built an Apple Notes MVP in 5 minutes using V0 and Cursor—watch a fast Next.js demo with notes, pins, edits, and more.

Show Notes

Parker shows how to spin up an Apple Notes MVP in about five minutes using Cursor and v0, then wires it into a Next.js + Shadcn UI setup. It’s a practical look at AI-assisted scaffolding and rapid UI assembly.

Tools and setup

  • Cursor (a fork of VS Code) for the editor and AI prompts
  • v0 (an AI-driven code generator) to output app code from natural language prompts
  • Next.js as the app framework
  • Shadcn UI for components and styling
  • Optional: Cursor “projects” for multi-file workflows and “cloud sync” planning

Key Cursor setup (quick tips)

  • Models: disable unused models; enable code-focused ones (example: CLAE 3.5 and newer O1s; adjust to what you have)
  • Features: enable Cursor tab, composer, and make sure your codebase is indexed
  • Docs: add third-party API/docs with a “new Doc” entry, and start from the docs’ relevant sections for better precision
  • Long chat and AI review: turn these on for iterative refinement

How v0 is used to generate the app

  • Core idea: prompt v0 with a simple goal, e.g., “Make Apple notes,” and let it generate code in iterations
  • Iteration flow your prompts can look like:
    • v0 outputs a first version trying to satisfy the request
    • You guide it with references (e.g., “make it look like this screenshot”)
    • Do multiple passes (the video shows four versions to reach a solid result)
  • The breakthrough moment: you copy the resulting code block from v0 and drop it into your editor, then integrate it into your Next.js app

What you’ll typically end up with

  • A ready-to-run Apple Notes component with:
    • A notes list (left rail) with pinning and live updates
    • A rich text area that supports styling
    • Basic delete and edit capabilities
  • The “magic sauce” is adding the component to your codebase and wiring it into a page

Wiring the UI with Next.js and Shadcn UI

  • After v0 outputs the component, install and wire up Shadcn UI components
  • Use Next.js as the app shell to host the page that renders the generated Apple Notes component
  • Expect some libraries to show a browser-only red warning if they can’t run in the browser; plan for that in your UI

Suggested flow

  • Scaffold Next.js app (if you don’t already have one)
  • Install Shadcn UI per the official docs
  • Paste the v0 output into a page (e.g., AppleNotes.jsx/tsx) and adjust imports
  • Iterate on styling and component structure as needed

Cursor projects and multi-file workflows

  • Use Cursor “projects” to group related files (e.g., Apple Notes core, Cloud Sync logic, UI components)
  • This helps you keep related code together and makes it easier for v0 to reason about the project
  • Example: create a Cloud Sync project and add files that handle database interaction and syncing logic

Editor workflow and quick edits

  • Inline edits: Command K to edit in place
  • Split editing: Command Shift L to move edits to the right pane
  • Break into components: Command Shift I to open a pane for multi-file/component editing
  • Composer projects: Use the composer flow (Command Shift I) to open a project-focused workspace

Building toward a Cloud Sync MVP

  • Create a project named something like Cloud Sync
  • Add files that address syncing notes to a database or remote store
  • When your AI-generated chat or prompts reference Cloud Sync, you’ll have the focused files ready

Practical takeaways

  • AI-driven scaffolding can produce a working MVP in minutes; the hard part is iterating to a polished UX
  • Maintain Prompts and Documentation
    • Keep a dedicated cursor rules file at the repo root to guide AI behavior
    • A well-crafted rules file helps keep AI responses aligned with your architecture
  • Use a project-centric workflow to keep generated code organized and extensible
  • Watch for browser-only libraries (red indicators) and plan graceful fallbacks or SSR-friendly alternatives

Quick caveats

  • The red indicator in the UI signals a library that can’t run in the browser; you’ll need to adjust dependencies or lazy-load features
  • AI-generated code usually needs human refinement for edge cases, but the scaffolding buys you huge time

What the final MVP looks like

  • A responsive notes app with:
    • Left-hand notes list with pinning and updates
    • Right-hand editor area with inline styling
    • Capable of creating, editing, and deleting notes
    • A path to extend with cloud syncing and extra features via additional files and components

Next steps

  • Try the same approach on a small project: pick a simple MVP idea and generate the core UI with v0
  • Add a dedicated cursor rules file to your repo to stabilize AI prompts
  • Explore Cursor’s directory for more prompts and patterns to speed up future setups