Getting Started
- Copy the
product-plan/folder into your target codebase - Start your AI coding agent (Claude Code, Cursor, etc.)
- Choose your implementation approach: one-shot or section-by-section
See Implementation Approaches to decide which strategy fits your project.
Using the Pre-Written Prompts
The export includes ready-to-use prompts designed to guide your coding agent through the implementation process.For One-Shot Implementation
- Open
product-plan/prompts/one-shot-prompt.md - Add any additional notes (tech stack preferences, constraints)
- Copy/paste the prompt into your coding agent
- Answer the agent’s clarifying questions about:
- Your tech stack and existing codebase conventions
- Authentication and user management approach
- Product requirements that need clarification
- Anything else needed before implementing
- Let the agent plan and implement everything
For Incremental Implementation
Work through the instructions in order:- Shell (
instructions/incremental/01-shell.md) — Design tokens and application shell - Sections (
instructions/incremental/02-*.md,03-*.md, etc.) — Each feature, one at a time
- Open
product-plan/prompts/section-prompt.md - Fill in the section variables at the top:
SECTION_NAME— Human-readable name (e.g., “Invoices”)SECTION_ID— Folder name (e.g., “invoices”)NN— Milestone number (e.g., “02” for first section)
- Add any section-specific notes
- Copy/paste the prompt into your coding agent
- Answer clarifying questions and let the agent implement
- Review and test before moving to the next milestone
The prompts guide your agent to review all provided files and ask the right questions before starting. Don’t skip this step—it prevents wasted work from misunderstandings.
Test-Driven Development
Each section includes atests.md file with detailed test-writing instructions. We recommend a TDD approach:
- Read the test instructions — Review
sections/[section-id]/tests.md - Write failing tests — Based on the user flows and assertions described
- Implement the feature — Make the tests pass
- Refactor — Clean up while keeping tests green
What’s in tests.md
The test instructions include:User Flow Tests
User Flow Tests
Success and failure paths for key interactions:
- Setup and preconditions
- Step-by-step actions the user takes
- Expected results with specific assertions
- Validation errors and edge cases
Empty State Tests
Empty State Tests
Verifying behavior when no records exist:
- Primary empty state (first-time user, no records yet)
- Related records empty state (parent exists, no children)
- Transitions from empty to populated and back
Component Interaction Tests
Component Interaction Tests
Specific UI elements and behaviors:
- Rendering with correct data
- User interactions (clicks, hovers, keyboard)
- Edge cases (long text, many items, etc.)
Sample Test Data
Sample Test Data
Ready-to-use test fixtures:
Spec-Driven Development
We also recommend a spec-driven approach:- Review the design — Understand what’s been designed and why
- Ask clarifying questions — Resolve any ambiguities before coding
- Plan the implementation — Decide on architecture, data layer, integration
- Write tests first — Based on the provided test instructions
- Implement — Build to make tests pass
- Verify — Ensure the implementation matches the design
Clarifying Questions
Before finalizing any implementation plan, encourage your agent to review all provided files and ask clarifying questions about:Tech StackFramework, language, existing conventions, and any constraints
AuthenticationUser sign up, login, permissions, and session management
Data LayerHow to extend the data shapes for your backend needs
RequirementsAny product requirements that need clarification
What’s Included vs. What You Build
The Design OS Export Provides
- Finished UI components — Props-based, fully styled, responsive, dark mode support
- Product requirements — Specs, user flows, and scope definitions
- Design system tokens — Colors, typography, CSS custom properties
- Sample data — Showing the shape of data components expect
- UI behavior test specs — What to test from the user’s perspective
Your Implementation Agent Builds
- Backend APIs and data layer
- Routing and navigation integration
- State management
- Error handling and loading states
- Authentication and authorization
- Database models and migrations
- Tests based on the provided specs
- Integration with external services
The UI components are complete and production-ready. Wire them up, don’t rebuild them.
How Components Work
Components accept data and fire callbacks via props:- Your routing library (React Router, Next.js, Remix, etc.)
- Your data fetching approach (REST, GraphQL, tRPC, etc.)
- Your state management (Context, Redux, Zustand, etc.)
- Your backend framework (Node.js, Rails, Django, Laravel, etc.)
Implementation Tips
Use the pre-written prompts
Use the pre-written prompts
They guide your agent to review designs and ask the right questions. Don’t skip the clarifying questions step—it prevents misunderstandings.
Always include product-overview.md
Always include product-overview.md
It gives essential context about the full product. Include it with every implementation session, whether one-shot or incremental.
Write tests first
Write tests first
Use the
tests.md instructions for TDD. Writing tests before implementation ensures you’re building what’s actually needed.Review incrementally
Review incrementally
Section-by-section implementation lets you catch issues early. Don’t wait until everything is built to start testing.
Test with sample data first
Test with sample data first
Use the provided
sample-data.json before building real APIs. This lets you verify the UI works correctly before integrating with the backend.Handle empty states
Handle empty states
Ensure good UX when no records exist (first-time users, after deletions). Empty state designs are included in the components.
Trust the components
Trust the components
They’re designed and styled already. Wire them up with your routing and data—don’t rebuild them from scratch.
Example: Incremental Implementation
Here’s how a typical incremental implementation might flow:Milestone 1: Shell
- Open
prompts/section-prompt.mdand set: - Copy/paste into coding agent
- Agent asks clarifying questions about routing, auth, etc.
- Agent implements design tokens and shell components
- Review: Navigation works, user menu displays, responsive layout
Milestone 2: First Section (e.g., Invoices)
- Open
prompts/section-prompt.mdand set: - Copy/paste into coding agent
- Agent asks about API endpoints, data persistence, etc.
- Agent writes tests based on
tests.md - Agent implements the section to make tests pass
- Review: User flows work, empty states display, tests pass
Milestone 3: Second Section (e.g., Projects)
- Repeat the process for the next section
- Continue until all sections are complete
Each milestone builds on the previous one. Make sure each is complete and tested before moving to the next.
Next Steps
Implementation Approaches
Compare one-shot vs. incremental strategies
Export Package
Detailed breakdown of what’s included