# Roadmap: GearBox

## Milestones

- ✅ **v1.0 MVP** -- Phases 1-3 (shipped 2026-03-15)
- **v1.1 Fixes & Polish** -- Phases 4-6 (in progress)

## Phases

<details>
<summary>v1.0 MVP (Phases 1-3) -- SHIPPED 2026-03-15</summary>

- [x] Phase 1: Foundation and Collection (4/4 plans) -- completed 2026-03-14
- [x] Phase 2: Planning Threads (3/3 plans) -- completed 2026-03-15
- [x] Phase 3: Setups and Dashboard (3/3 plans) -- completed 2026-03-15

</details>

### v1.1 Fixes & Polish (In Progress)

**Milestone Goal:** Fix broken functionality, improve image handling UX, and replace emoji categories with Lucide icon picker.

- [ ] **Phase 4: Database & Planning Fixes** - Fix threads table and planning thread creation, polish empty states
- [x] **Phase 5: Image Handling** - Fix image display and redesign upload UX with previews (completed 2026-03-15)
- [ ] **Phase 6: Category Icons** - Replace emoji categories with Lucide icon picker

## Phase Details

### Phase 4: Database & Planning Fixes
**Goal**: Users can create and manage planning threads without errors
**Depends on**: Phase 3 (v1.0 complete)
**Requirements**: DB-01, PLAN-01, PLAN-02
**Success Criteria** (what must be TRUE):
  1. Running database schema push creates the threads table (and any other missing tables) without errors
  2. User can create a new planning thread from the planning tab and it appears in the thread list
  3. User sees a clear, polished empty state with a call-to-action when no planning threads exist
**Plans**: 2 plans

Plans:
- [x] 04-01-PLAN.md — Database schema fix and backend thread API with categoryId
- [ ] 04-02-PLAN.md — Frontend planning tab overhaul (modal, empty state, pill tabs, category filter)

### Phase 5: Image Handling
**Goal**: Users can see and manage gear images throughout the app
**Depends on**: Phase 4
**Requirements**: IMG-01, IMG-02, IMG-03, IMG-04
**Success Criteria** (what must be TRUE):
  1. User can see previously uploaded images displayed correctly on item detail views
  2. Gear collection cards show item images (or a placeholder when no image exists)
  3. Item form displays an image preview area at the top with a placeholder icon when no image is set
  4. User can upload an image by clicking the placeholder area, and the preview updates immediately
**Plans**: 2 plans

Plans:
- [ ] 05-01-PLAN.md — Fix image display bug and redesign ImageUpload as hero preview area
- [ ] 05-02-PLAN.md — Add card image placeholders and setup thumbnails

### Phase 6: Category Icons
**Goal**: Categories use clean Lucide icons instead of emoji
**Depends on**: Phase 4
**Requirements**: CAT-01, CAT-02, CAT-03
**Success Criteria** (what must be TRUE):
  1. User can browse and select a Lucide icon from a picker when creating or editing a category
  2. Category icons render as Lucide icons everywhere they appear (cards, headers, lists, dashboard)
  3. Existing emoji-based categories display as equivalent Lucide icons without manual user intervention
**Plans**: 3 plans

Plans:
- [ ] 06-01-PLAN.md — Backend schema migration (emoji to icon), install lucide-react, create icon data and LucideIcon component
- [ ] 06-02-PLAN.md — Build IconPicker component, update category create/edit components
- [ ] 06-03-PLAN.md — Update all display components to Lucide icons, delete old emoji code

## Progress

**Execution Order:**
Phases execute in numeric order: 4 -> 5 -> 6

| Phase | Milestone | Plans Complete | Status | Completed |
|-------|-----------|----------------|--------|-----------|
| 1. Foundation and Collection | v1.0 | 4/4 | Complete | 2026-03-14 |
| 2. Planning Threads | v1.0 | 3/3 | Complete | 2026-03-15 |
| 3. Setups and Dashboard | v1.0 | 3/3 | Complete | 2026-03-15 |
| 4. Database & Planning Fixes | v1.1 | 1/2 | In progress | - |
| 5. Image Handling | 2/2 | Complete   | 2026-03-15 | - |
| 6. Category Icons | v1.1 | 0/3 | Not started | - |
