Skip to main content
When your designs are complete, export everything your implementation agent (or team) needs to build the product.

When to Export

You’re ready to export when:
  • Product vision and roadmap are defined
  • At least one section has screen designs
  • You’re satisfied with the design direction
You can export at any point—it doesn’t have to be “complete.” Exporting generates a snapshot of your current designs. You can always export again later as you add more sections.

Running the Export

/export-product
```bash

The export command:

1. **Checks prerequisites** — Verifies required files exist
2. **Gathers all design assets** — Components, types, data, tokens
3. **Generates implementation instructions** — Including ready-to-use prompts
4. **Generates test instructions** — TDD specs for each section
5. **Creates the export package** — A complete `product-plan/` directory
6. **Creates a zip file** — `product-plan.zip` for easy download

## What's Included

The export package contains everything needed for implementation:

### Ready-to-Use Prompts

```bash
product-plan/prompts/
├── one-shot-prompt.md     # Prompt for full implementation
└── section-prompt.md      # Prompt template for section-by-section
```bash

Pre-written prompts you copy/paste into your coding agent. They reference the instruction files and guide your agent to review the designs and ask clarifying questions before implementing.

### Implementation Instructions

```bash
product-plan/
├── product-overview.md              # Product summary (always provide)
└── instructions/
    ├── one-shot-instructions.md     # All milestones combined
    └── incremental/                 # Milestone-by-milestone
        ├── 01-shell.md              # Design tokens + app shell
        ├── 02-[section-id].md       # One per section
        └── ...
```bash

<Info>
**product-overview.md** provides context about the full product—always include it with any implementation session.
</Info>

- **one-shot-instructions.md** combines all milestones into a single document
- **Incremental instructions** break the work into milestones for step-by-step implementation

### Design System

```bash
product-plan/design-system/
├── tokens.css           # CSS custom properties
├── tailwind-colors.md   # Tailwind configuration guide
└── fonts.md             # Google Fonts setup
```bash

### Data Shapes

```bash
product-plan/data-shapes/
├── README.md            # UI data contracts overview
└── overview.ts          # Combined type reference
```bash

<Note>
These types define what data the UI components expect. How you model, store, and fetch this data on the backend is an implementation decision.
</Note>

### Shell Components

```bash
product-plan/shell/
├── README.md            # Design intent
├── components/
   ├── AppShell.tsx     # Main layout wrapper
   ├── MainNav.tsx      # Navigation
   ├── UserMenu.tsx     # User menu
   └── index.ts         # Exports
└── screenshot.png       # Visual reference
```bash

### Section Components

For each section:

```bash
product-plan/sections/[section-id]/
├── README.md            # Feature overview, user flows
├── tests.md             # UI behavior test specs
├── components/
   ├── [Component].tsx  # Exportable components
   └── index.ts         # Exports
├── types.ts             # TypeScript interfaces
├── sample-data.json     # Test data
└── screenshot.png       # Visual reference
```bash

### Test Instructions

<Warning>
Each section includes a `tests.md` file with framework-agnostic test-writing instructions:

- **User flow tests** — Success and failure paths
- **Empty state tests** — Verifying UI when no records exist
- **Component interaction tests** — Specific UI elements and behaviors
</Warning>

These instructions describe WHAT to test, not HOW—your coding agent adapts them to your test framework (Jest, Vitest, Playwright, Cypress, RSpec, etc.).

## About the Components

Exported components are:

- **Props-based** — Accept data and callbacks via props, never import data directly
- **Portable** — Work with any React setup, no Design OS dependencies
- **Complete** — Full styling, responsive design, dark mode support
- **Production-ready** — Not prototypes or mockups

```tsx
// Components expect data and callbacks as props
<InvoiceList
  invoices={data}
  onView={(id) => navigate(`/invoices/${id}`)}
  onEdit={(id) => navigate(`/invoices/${id}/edit`)}
  onDelete={(id) => confirmDelete(id)}
  onCreate={() => navigate('/invoices/new')}
/>
```bash

Your implementation agent's job is to:

- Wire up callbacks to routing and API calls
- Replace sample data with real data from your backend
- Implement proper error handling and loading states
- Implement empty states when no records exist
- Build the backend APIs the components need
- Write tests based on the provided test instructions (TDD approach)

## Next Steps

<CardGroup cols={2}>
  <Card title="Export Package" icon="box" href="/export/export-package">
    Explore what's in the export package
  </Card>
  <Card title="Implementation Guide" icon="code" href="/export/implementation-guide">
    Learn how to implement your designs
  </Card>
  <Card title="Implementation Approaches" icon="route" href="/export/one-shot-vs-incremental">
    Choose between one-shot or incremental
  </Card>
</CardGroup>

Build docs developers (and LLMs) love