Skip to main content

Platform

What do we control directly?

Components Used

ComponentRole
CDD Prototype5 interaction patterns explored — Morning Pages, Compass, Stack, Mission Control, Conversation
Figma TemplateVisual design + grid layout
Stackmates AuthUser accounts, session management
ConvexReal-time data layer — collaborative, live updates
AI Agent PathsSuggest questions for empty cells, coaching mode
Mental Model Content1,200+ pages of 5P-structured domain content as templates

Build ratio: ~60% composition, ~40% new code

Interaction Patterns

The prototype explored five ways to interact with the same 5x5 data:

PatternMetaphorDensityBest ForBuild Priority
Mission ControlDashboardHigh — all 25 cells visibleDesktop review, team alignmentV1 — ship first
The StackCard deckMedium — one card at a timeMobile, daily check-inV1 — ship alongside
Morning PagesJournalLow — one prompt, meditativeReflection, Pep Talk modeV2
The CompassNavigationMedium — radial layoutSpatial thinkers, explorationV2
The ConversationAI coachAdaptive — chat-drivenNew users, guided onboardingV3

V1 ships two patterns: Mission Control (desktop, all-at-once) and The Stack (mobile, one-at-a-time). Same data, different interaction density.

System Design

+-------------------------------------------------+
| INTERACTION LAYER |
| Mission Control | Stack | Morning | Compass | AI|
+-------------------------------------------------+
| DECK ENGINE |
| 5x5 Matrix | Modes | Scales | Snapshots |
+-------------------------------------------------+
| DATA LAYER (Convex) |
| Cells | Priorities | Versions | User State |
+-------------------------------------------------+
| PLATFORM (Stackmates) |
| Auth | Storage | Sharing | AI Prompts |
+-------------------------------------------------+

Data Model

Deck {
id, userId, title, scale, mode, createdAt, updatedAt
}

Priority {
id, deckId, position (1-5), label, description
}

Cell {
id, deckId, priorityIndex (1-5), promptIndex (1-5), content, updatedAt
}

Snapshot {
id, deckId, cells[], takenAt, label
}

Five prompts are fixed (Performance, Protocols, Platform, Players, Principles). Five priorities are user-defined (the columns). 25 cells are the intersection. Snapshots capture a moment for comparison.

Database Selection

LayerDatabaseWhy
Grid stateConvexReal-time collaboration, live updates, optimistic UI
User profilesSupabase (PostgreSQL)Relational, historical, auth integration
Shared/published decksEdge cacheFast reads, public access

Different jobs, different data characteristics. The Prompt Deck is the proving ground for this multi-database pattern.

Context