Product App

Features & Capabilities

Product App - Features & Capabilities Report

Template Version: 1.0.0 Generated: 2026-01-22 Package: @epicdm/flowstate-app-product App ID: product


Table of Contents

  1. Overview
  2. App Identity
  3. Feature Categories
  4. Capabilities
  5. Data Models
  6. User Workflows
  7. Integration Points
  8. Commands & Keybindings
  9. Architecture Summary
  10. Quality & Compliance

Overview

Purpose

The Product App provides comprehensive product management capabilities for FlowState, enabling product managers and teams to manage product portfolios, define strategic goals (OKRs), plan roadmaps with initiatives, coordinate teams with RACI matrices, and track product lifecycle phases.

Target Users

User TypeDescriptionPrimary Use Cases
Product ManagersResponsible for product strategy and executionDefine products, set goals, plan roadmaps, manage team assignments
Product OwnersOwn product backlog and prioritizationLink projects to products, track initiative progress
Team LeadsManage team members and responsibilitiesAssign RACI roles, manage team composition
ExecutivesStrategic oversight of product portfolioPortfolio view, health monitoring, goal tracking

Value Proposition

  • Centralized Product Management: Single source of truth for all product information
  • Strategic Goal Alignment: OKR framework with hierarchical goals and metrics
  • Visual Roadmap Planning: Timeline and Kanban views for initiative management
  • Clear Accountability: RACI matrix for defining responsibilities
  • Portfolio Health Monitoring: Aggregated views with health indicators
  • Activity Tracking: Comprehensive audit trail of all product changes

App Identity

PropertyValue
IDproduct
Display NameProduct
Package Name@epicdm/flowstate-app-product
Version1.0.0
Categorytechnical
Iconpackage
Color#6366f1
Base Path/product
PermissionsNone required

Entry Points

Entry PointPathDescription
Main Exportsrc/index.tsPrimary package export with all components, hooks, services
Standalonesrc/standalone.tsxStandalone app entry
App Componentsrc/App.tsxMain React component with routing
Pluginsrc/plugin.tsFlowState plugin registration

Feature Categories

Category 1: Product Management

Core product lifecycle management from concept to maturity

Feature: Product CRUD Operations

PropertyDetails
IDproduct-crud
StatusImplemented
PriorityHigh

Description: Create, view, edit, and delete products with comprehensive metadata including name, description, type, phase, and visual customization (icon, color).

User Story: As a product manager, I want to manage product records so that I can track all products in our portfolio.

Acceptance Criteria:

  • [x] Create products with name, description, type, icon, color
  • [x] View products in list/grid layouts with filtering
  • [x] Edit product details via modal
  • [x] Soft-delete products with confirmation dialog
  • [x] Filter by product type and lifecycle phase

Implementation:

ComponentPathPurpose
ProductListPagesrc/pages/ProductListPage.tsxMain product listing
ProductDetailPagesrc/pages/ProductDetailPage.tsxProduct detail view
EditProductModalsrc/components/detail/EditProductModal.tsxEdit product info
DeleteConfirmsrc/components/detail/DeleteConfirm.tsxDelete confirmation
useProductssrc/hooks/useProducts.tsProduct CRUD operations

Routes:

  • /products - Product list view
  • /products/:productId - Product detail view

Feature: Product Creation Wizard

PropertyDetails
IDproduct-wizard
StatusImplemented
PriorityHigh

Description: 6-step guided wizard for comprehensive product creation covering type selection, identity, problem/value proposition, target market, competitive analysis, and review.

User Story: As a product manager, I want a guided product creation process so that I capture all essential product information upfront.

Acceptance Criteria:

  • [x] Step 1: Select product type (software, physical, service, content, custom)
  • [x] Step 2: Define identity (name, description, icon, color)
  • [x] Step 3: Define problem statement and value proposition
  • [x] Step 4: Define target market and customer persona
  • [x] Step 5: Analyze competitive landscape
  • [x] Step 6: Review and confirm creation
  • [x] Progress persistence in session storage
  • [x] Skip and navigate between steps

Implementation:

ComponentPathPurpose
WizardModalsrc/components/wizard/WizardModal.tsxWizard container
WizardProgresssrc/components/wizard/WizardProgress.tsxProgress indicator
Step1TypeSelectsrc/components/wizard/Step1TypeSelect.tsxType selection
Step2Identitysrc/components/wizard/Step2Identity.tsxBasic info
Step3ProblemValuesrc/components/wizard/Step3ProblemValue.tsxProblem/value
Step4TargetMarketsrc/components/wizard/Step4TargetMarket.tsxTarget market
Step5Competitionsrc/components/wizard/Step5Competition.tsxCompetition
Step6Reviewsrc/components/wizard/Step6Review.tsxReview/confirm
productStoresrc/stores/productStore.tsWizard state management

Feature: Product Lifecycle Phases

PropertyDetails
IDproduct-phases
StatusImplemented
PriorityHigh

Description: Track product through lifecycle phases (Ideation, Development, Launch, Growth, Maturity, Decline) with transition history and optional notes.

User Story: As a product manager, I want to track my product's lifecycle phase so that I can apply appropriate strategies for each stage.

Acceptance Criteria:

  • [x] Visual phase indicator showing current phase
  • [x] Phase transition modal with optional notes
  • [x] Historical timeline of phase transitions
  • [x] Phase-based filtering in product list

Implementation:

ComponentPathPurpose
PhaseIndicatorsrc/components/detail/PhaseIndicator.tsxCurrent phase display
PhaseTimelinesrc/components/detail/PhaseTimeline.tsxTransition history
PhaseTransitionModalsrc/components/detail/PhaseTransitionModal.tsxPhase change dialog

Feature: Product Strategy Definition

PropertyDetails
IDproduct-strategy
StatusImplemented
PriorityMedium

Description: Define and edit strategic elements including problem statement, value proposition, target market, customer persona, competitive landscape, and KPIs.

User Story: As a product manager, I want to document my product strategy so that the team understands the product's direction and positioning.

Acceptance Criteria:

  • [x] Strategy tab with editable sections
  • [x] Problem statement and value proposition fields
  • [x] Target market and customer persona sections
  • [x] Competitive landscape documentation
  • [x] KPI definition and tracking

Implementation:

ComponentPathPurpose
StrategyTabsrc/components/detail/StrategyTab.tsxStrategy overview
KpisSectionsrc/components/detail/KpisSection.tsxKPI management
KpiCardsrc/components/detail/KpiCard.tsxIndividual KPI display
CompetitionSectionsrc/components/detail/CompetitionSection.tsxCompetition info

Category 2: Goal/OKR Management

Strategic goal setting and tracking with hierarchical structure

Feature: Goal CRUD Operations

PropertyDetails
IDgoal-crud
StatusImplemented
PriorityHigh

Description: Create, view, edit, and delete goals with support for hierarchical parent-child relationships, categories, status tracking, and progress modes.

User Story: As a product manager, I want to manage strategic goals so that I can align team efforts with business objectives.

Acceptance Criteria:

  • [x] Create goals with title, description, category, priority
  • [x] Support hierarchical goals (parent/child)
  • [x] Track status (Not Started, In Progress, At Risk, On Track, Complete)
  • [x] Support manual and automatic progress tracking
  • [x] Due date and target date management

Implementation:

ComponentPathPurpose
GoalModalsrc/components/goals/GoalModal.tsxCreate/edit goal
GoalCardsrc/components/goals/GoalCard.tsxGoal card display
GoalListsrc/components/goals/GoalList.tsxGoal list view
ParentGoalSelectsrc/components/goals/ParentGoalSelect.tsxParent selection
useProductGoalssrc/hooks/useProductGoals.tsGoal operations

Feature: Goal Views

PropertyDetails
IDgoal-views
StatusImplemented
PriorityMedium

Description: Multiple visualization options for goals including list view, dashboard view with charts, and hierarchical tree view.

User Story: As a product manager, I want different ways to view my goals so that I can understand progress from multiple perspectives.

Acceptance Criteria:

  • [x] List view with filtering and sorting
  • [x] Dashboard view with summary statistics
  • [x] Tree view showing goal hierarchy
  • [x] View toggle controls

Implementation:

ComponentPathPurpose
GoalDashboardsrc/components/goals/GoalDashboard.tsxDashboard view
GoalTreesrc/components/goals/GoalTree.tsxHierarchical view
GoalViewTogglesrc/components/goals/GoalViewToggle.tsxView switcher
GoalFilterssrc/components/goals/GoalFilters.tsxFilter controls

Feature: Goal Metrics/KPIs

PropertyDetails
IDgoal-metrics
StatusImplemented
PriorityMedium

Description: Attach measurable metrics to goals with support for different types (percentage, currency, count, custom), target values, current values, and trend indicators.

User Story: As a product manager, I want to attach metrics to my goals so that I can measure progress objectively.

Acceptance Criteria:

  • [x] Add multiple metrics per goal
  • [x] Support metric types (percentage, currency, count, custom)
  • [x] Track target, current, and start values
  • [x] Display trend indicators (up, down, stable)
  • [x] Visual progress representation

Implementation:

ComponentPathPurpose
MetricCardsrc/components/goals/MetricCard.tsxMetric display
MetricFormsrc/components/goals/MetricForm.tsxMetric editor
GoalProgressBarsrc/components/goals/GoalProgressBar.tsxProgress visual
useGoalProgresssrc/hooks/useGoalProgress.tsProgress calculations

Feature: Goal Charts & Analytics

PropertyDetails
IDgoal-charts
StatusImplemented
PriorityLow

Description: Visual analytics for goals including category distribution charts, progress distribution, and overall progress gauge.

User Story: As a product manager, I want visual analytics for my goals so that I can quickly understand overall goal health.

Acceptance Criteria:

  • [x] Goals by category chart
  • [x] Progress distribution chart
  • [x] Overall progress gauge
  • [x] Summary statistics display

Implementation:

ComponentPathPurpose
GoalsByCategoryChartsrc/components/goals/charts/GoalsByCategoryChart.tsxCategory chart
ProgressDistributionChartsrc/components/goals/charts/ProgressDistributionChart.tsxDistribution chart
OverallProgressGaugesrc/components/goals/charts/OverallProgressGauge.tsxProgress gauge
GoalSummaryStatssrc/components/goals/GoalSummaryStats.tsxStatistics summary

Category 3: Roadmap & Initiative Management

Strategic planning with timeline and status-based views

Feature: Roadmap Management

PropertyDetails
IDroadmap-management
StatusImplemented
PriorityHigh

Description: Product roadmaps with support for quarterly planning, two visualization modes (timeline and kanban), and year navigation.

User Story: As a product manager, I want to create and manage roadmaps so that I can plan and communicate product strategy.

Acceptance Criteria:

  • [x] Auto-create roadmap on first access
  • [x] Timeline view organized by quarters
  • [x] Kanban view organized by status
  • [x] Year navigation for multi-year planning
  • [x] Quarter filtering in kanban view

Implementation:

ComponentPathPurpose
RoadmapTabsrc/components/roadmap/RoadmapTab.tsxMain container
TimelineViewsrc/components/roadmap/TimelineView.tsxTimeline display
KanbanViewsrc/components/roadmap/KanbanView.tsxKanban display
YearNavigatorsrc/components/roadmap/YearNavigator.tsxYear selector
QuarterFiltersrc/components/roadmap/QuarterFilter.tsxQuarter filter
useRoadmapsrc/hooks/useRoadmap.tsRoadmap operations
roadmapStoresrc/stores/roadmapStore.tsView state

Feature: Initiative Management

PropertyDetails
IDinitiative-management
StatusImplemented
PriorityHigh

Description: Create and manage initiatives within roadmaps with status tracking, priority levels, color coding, and project linking.

User Story: As a product manager, I want to manage initiatives so that I can track strategic work items on my roadmap.

Acceptance Criteria:

  • [x] Create initiatives with name, description, quarter, status, priority
  • [x] Color coding for visual differentiation
  • [x] Link projects to initiatives
  • [x] Status tracking (Backlog, Planned, In Progress, Done)
  • [x] Priority levels (High, Medium, Low)

Implementation:

ComponentPathPurpose
InitiativeCardsrc/components/roadmap/InitiativeCard.tsxInitiative display
InitiativeFormsrc/components/roadmap/InitiativeForm.tsxCreate/edit form
InitiativeModalsrc/components/roadmap/InitiativeModal.tsxModal wrapper
ProjectLinkSelectorsrc/components/roadmap/ProjectLinkSelector.tsxProject linking
initiativeServicesrc/services/initiativeService.tsInitiative logic

Feature: Drag-and-Drop Roadmap

PropertyDetails
IDroadmap-dnd
StatusImplemented
PriorityMedium

Description: Drag-and-drop support for moving initiatives between quarters (timeline) or status columns (kanban).

User Story: As a product manager, I want to drag initiatives to reschedule them so that I can quickly adjust my roadmap.

Acceptance Criteria:

  • [x] Drag initiatives between quarters in timeline view
  • [x] Drag initiatives between status columns in kanban view
  • [x] Visual feedback during drag operations
  • [x] Automatic data persistence on drop

Implementation:

ComponentPathPurpose
DraggableInitiativeCardsrc/components/roadmap/DraggableInitiativeCard.tsxDraggable card
DroppableQuarterColumnsrc/components/roadmap/DroppableQuarterColumn.tsxQuarter drop zone
DroppableStatusColumnsrc/components/roadmap/DroppableStatusColumn.tsxStatus drop zone
QuarterColumnsrc/components/roadmap/QuarterColumn.tsxQuarter container
StatusColumnsrc/components/roadmap/StatusColumn.tsxStatus container

Category 4: Team & RACI Management

Team composition and responsibility assignment

Feature: Team Member Management

PropertyDetails
IDteam-management
StatusImplemented
PriorityHigh

Description: Manage product team members with role assignments (Owner, Contributor, Viewer), user search, and RACI role assignments.

User Story: As a product manager, I want to manage my product team so that I can track who is working on my product.

Acceptance Criteria:

  • [x] Add team members by searching users
  • [x] Assign roles (Owner, Contributor, Viewer)
  • [x] Edit team member roles
  • [x] Remove team members with confirmation
  • [x] View team member list

Implementation:

ComponentPathPurpose
TeamTabsrc/components/team/TeamTab.tsxTeam container
TeamMemberListsrc/components/team/TeamMemberList.tsxMember list
TeamMemberCardsrc/components/team/TeamMemberCard.tsxMember card
AddMemberModalsrc/components/team/AddMemberModal.tsxAdd member
EditMemberModalsrc/components/team/EditMemberModal.tsxEdit member
RemoveMemberDialogsrc/components/team/RemoveMemberDialog.tsxRemove confirm
useTeamMemberssrc/hooks/useTeamMembers.tsTeam operations
teamServicesrc/services/teamService.tsTeam logic

Feature: RACI Matrix

PropertyDetails
IDraci-matrix
StatusImplemented
PriorityMedium

Description: Interactive RACI (Responsible, Accountable, Consulted, Informed) matrix for defining clear accountability across responsibility areas.

User Story: As a product manager, I want to define a RACI matrix so that everyone knows their responsibilities.

Acceptance Criteria:

  • [x] Interactive matrix with team members vs areas
  • [x] Click to cycle through R/A/C/I roles
  • [x] Add/manage RACI areas
  • [x] Validation warnings (missing Accountable/Responsible)
  • [x] Legend explaining RACI abbreviations

Implementation:

ComponentPathPurpose
RaciMatrixViewsrc/components/raci/RaciMatrixView.tsxMatrix grid
RaciCellsrc/components/raci/RaciCell.tsxInteractive cell
RaciLegendsrc/components/raci/RaciLegend.tsxRole legend
RaciAreaManagersrc/components/raci/RaciAreaManager.tsxArea management
RaciWarningssrc/components/raci/RaciWarnings.tsxValidation warnings

Category 5: Project Integration

Linking projects to products for execution tracking

Feature: Project Linking

PropertyDetails
IDproject-linking
StatusImplemented
PriorityHigh

Description: Link external projects to products with relationship types (Supports, Implements, Depends On) and track project progress.

User Story: As a product manager, I want to link projects to my product so that I can track execution progress.

Acceptance Criteria:

  • [x] Link projects to products via modal
  • [x] Define relationship type (supports, implements, depends_on)
  • [x] View linked projects with status and completion
  • [x] Unlink projects with confirmation
  • [x] Grid and list view options

Implementation:

ComponentPathPurpose
ProjectsTabsrc/components/projects/ProjectsTab.tsxProjects container
ProjectListsrc/components/projects/ProjectList.tsxProject list
ProjectCardsrc/components/projects/ProjectCard.tsxProject card
LinkProjectModalsrc/components/projects/LinkProjectModal.tsxLink modal
UnlinkConfirmDialogsrc/components/projects/UnlinkConfirmDialog.tsxUnlink confirm
useProductProjectssrc/hooks/useProductProjects.tsProject operations
productProjectServicesrc/services/productProjectService.tsService logic

Category 6: Portfolio Management

Aggregated portfolio views and health monitoring

Feature: Portfolio Dashboard

PropertyDetails
IDportfolio-dashboard
StatusImplemented
PriorityMedium

Description: Portfolio-level view showing all products with health indicators, filtering, sorting, and aggregated statistics.

User Story: As an executive, I want a portfolio view so that I can monitor the health of all products at once.

Acceptance Criteria:

  • [x] Grid view of all products
  • [x] Health status indicators (green/yellow/red)
  • [x] Filter by phase, type, health, owner
  • [x] Sort by name, phase, health, created date
  • [x] Portfolio statistics summary

Implementation:

ComponentPathPurpose
PortfolioHeadersrc/components/portfolio/PortfolioHeader.tsxHeader controls
PortfolioGridsrc/components/portfolio/PortfolioGrid.tsxProduct grid
PortfolioFilterssrc/components/portfolio/PortfolioFilters.tsxFilter controls
PortfolioProductCardsrc/components/portfolio/PortfolioProductCard.tsxEnhanced card
PortfolioStatssrc/components/portfolio/PortfolioStats.tsxStatistics
portfolioServicesrc/services/portfolioService.tsPortfolio logic

Category 7: Activity Tracking

Comprehensive audit trail and activity monitoring

Feature: Activity Feed

PropertyDetails
IDactivity-feed
StatusImplemented
PriorityMedium

Description: Chronological feed of all product-related activities with filtering by entity type and action.

User Story: As a product manager, I want to see an activity log so that I can track all changes to my product.

Acceptance Criteria:

  • [x] Chronological activity display
  • [x] Filter by entity type (product, goal, project, team)
  • [x] Filter by action type
  • [x] Display user info and change details
  • [x] Pagination support

Implementation:

ComponentPathPurpose
ActivityFeedsrc/components/activity/ActivityFeed.tsxActivity container
ActivityListsrc/components/activity/ActivityList.tsxActivity list
ActivityItemsrc/components/activity/ActivityItem.tsxSingle activity
ActivityFilterssrc/components/activity/ActivityFilters.tsxFilter controls
useActivitiessrc/hooks/useActivities.tsActivity queries
activityServicesrc/services/activityService.tsActivity logic

Capabilities

Core Capabilities

CapabilityDescriptionImplementation
Product Lifecycle ManagementFull product lifecycle from concept to declinePhase tracking, transitions, history
Strategic Goal FrameworkOKR-style goals with metrics and hierarchyGoal model with parent-child relationships
Visual Roadmap PlanningTimeline and kanban views for initiativesDrag-drop with quarter/status organization
Team AccountabilityRACI matrix for clear role definitionInteractive matrix with validation
Portfolio Health MonitoringAggregated product health indicatorsHealth calculation from goal status

Technical Capabilities

CapabilityStatusNotes
CRUD OperationsYesFull CRUD for products, goals, initiatives, team members
Real-time UpdatesYesRxDB reactive subscriptions
Offline SupportYesRxDB local-first architecture
Search & FilterYesMulti-field filtering on all list views
SortingYesConfigurable sort fields and directions
PaginationYesActivity feed pagination
ExportNoNot currently implemented
NotificationsNoNot currently implemented

Integration Capabilities

IntegrationTypeDescription
ProjectsinternalLink projects from flowstate-app-projects
Goals CollectioninternalGoals stored in shared RxDB collection
UsersinternalUser data from FlowState framework
OrganizationsinternalMulti-org support via orgId

Data Models

Collections Used

CollectionDescriptionOperationsPrimary Hook
productsProduct records with metadataCRUD, QueryuseProducts
goalsStrategic goals with metricsCRUD, QueryuseProductGoals
roadmapsProduct roadmapsCRUD, QueryuseRoadmap
initiativesRoadmap initiativesCRUD, QueryuseRoadmap
productProjectsProduct-project linksCRUD, QueryuseProductProjects
teamMembersProduct team membersCRUD, QueryuseTeamMembers
activitiesActivity log entriesCreate, QueryuseActivities
productGoalsProduct-goal linksCRUD, QueryuseProductGoals

Entity Relationships

Product
    |
    +-- Goals (hasMany via productGoals)
    |       |
    |       +-- Child Goals (hasMany via parentGoalId)
    |       |
    |       +-- Metrics (embedded array)
    |
    +-- Roadmap (hasOne)
    |       |
    |       +-- Initiatives (hasMany)
    |               |
    |               +-- Projects (manyToMany via projectIds)
    |
    +-- TeamMembers (hasMany)
    |       |
    |       +-- RACI Assignments (embedded array)
    |
    +-- ProductProjects (hasMany)
    |       |
    |       +-- Project (belongsTo)
    |
    +-- Activities (hasMany)

Key Data Flows

User Action --> Component --> Hook --> Service (pure functions) --> RxDB Collection --> UI Update
                                |
                                +--> Zustand Store (UI state)

User Workflows

Workflow 1: Product Creation

Complete guided product creation process

Trigger: Click "New Product" button

Steps:

StepActionComponentOutcome
1Select product typeStep1TypeSelectType stored in wizard data
2Enter identity infoStep2IdentityName, description, icon, color set
3Define problem/valueStep3ProblemValueProblem statement and value prop set
4Define target marketStep4TargetMarketMarket and persona defined
5Analyze competitionStep5CompetitionCompetitive landscape documented
6Review and confirmStep6ReviewProduct created in database

Success Outcome: Product created in "Concept" phase, user redirected to product detail Failure Handling: Validation errors shown inline, wizard data persisted in session


Workflow 2: Goal Management

Create and track strategic goals with metrics

Trigger: Navigate to Goals tab, click "Add Goal"

Steps:

StepActionComponentOutcome
1Open goal modalGoalModalModal displayed
2Enter goal detailsGoalModalTitle, description, category, priority set
3Set datesGoalModalDue date and target date set
4Select parent goalParentGoalSelectHierarchy established
5Add metricsMetricFormKPIs attached to goal
6Save goalGoalModalGoal created and linked to product

Success Outcome: Goal appears in goal list with status badge Failure Handling: Validation errors displayed, form state preserved


Workflow 3: Roadmap Planning

Plan product strategy with initiatives

Trigger: Navigate to Roadmap tab

Steps:

StepActionComponentOutcome
1View roadmapRoadmapTabTimeline or kanban view displayed
2Create initiativeInitiativeModalInitiative form shown
3Set quarter and statusInitiativeFormInitiative scheduled
4Link projectsProjectLinkSelectorExecution tracked
5Drag to rescheduleDraggableInitiativeCardInitiative moved to new quarter/status

Success Outcome: Initiatives organized by quarter with linked projects Failure Handling: Drag operations cancelable, data persisted on drop


Workflow 4: RACI Assignment

Define team responsibilities

Trigger: Navigate to Team tab, select RACI view

Steps:

StepActionComponentOutcome
1Add team memberAddMemberModalMember added with role
2Create RACI areasRaciAreaManagerResponsibility areas defined
3Assign RACI rolesRaciCellClick cells to assign R/A/C/I
4Review warningsRaciWarningsAddress missing assignments

Success Outcome: Complete RACI matrix with all areas covered Failure Handling: Warnings highlight missing accountable/responsible roles


State Transitions

Product Phase States

+----------+   +-------------+   +--------+   +--------+   +----------+   +---------+
| Ideation |-->| Development |-->| Launch |-->| Growth |-->| Maturity |-->| Decline |
+----------+   +-------------+   +--------+   +--------+   +----------+   +---------+
From StateTo StateTriggerSide Effects
AnyAnyPhaseTransitionModal confirmationPhase history entry created, activity logged

Goal Status States

+-------------+   +-------------+   +----------+
| Not Started |-->| In Progress |-->| Complete |
+-------------+   +-------------+   +----------+
        |                |
        v                v
    +---------+     +----------+
    | At Risk | <-->| On Track |
    +---------+     +----------+

Initiative Status States

+---------+   +---------+   +-------------+   +------+
| Backlog |-->| Planned |-->| In Progress |-->| Done |
+---------+   +---------+   +-------------+   +------+

Integration Points

Internal Integrations

IntegrationPackagePurpose
FlowState Framework@epicdm/flowstate-app-frameworkApp container, auth, org/workspace context
Collections@epicdm/flowstate-collectionsData models and ID generation
RxDB React@epicdm/flowstate-rxdb-reactReactive data subscriptions

External Integrations

IntegrationTypeConfiguration
None-No external integrations currently

MCP Integration

ToolPurposeExample Usage
collection-queryQuery products, goals, initiatives{"collection": "products", "selector": {"orgId": "..."}}
collection-createCreate products, goals{"collection": "products", "data": {...}}
collection-updateUpdate product phase, goal status{"collection": "products", "id": "...", "data": {...}}

Commands & Keybindings

Registered Commands

Command IDTitleIconCategory
None registered---

Note: Commands and keybindings are not currently registered in flowstate.json

Menu LocationCommands
NoneNo menu contributions

Architecture Summary

Directory Structure

src/
+-- components/          # UI components
|   +-- activity/       # Activity feed components
|   +-- detail/         # Product detail components
|   +-- goals/          # Goal management components
|   |   +-- charts/     # Goal visualization charts
|   +-- portfolio/      # Portfolio view components
|   +-- products/       # Product list components
|   +-- projects/       # Project linking components
|   +-- raci/           # RACI matrix components
|   +-- roadmap/        # Roadmap/initiative components
|   +-- shared/         # Shared utility components
|   +-- team/           # Team management components
|   +-- wizard/         # Product creation wizard
+-- hooks/              # Custom React hooks (10 hooks)
+-- services/           # Business logic services (6 services)
+-- pages/              # Page components (6 pages)
+-- types/              # TypeScript definitions
+-- schemas/            # Zod validation schemas
+-- stores/             # Zustand stores (4 stores)
+-- utils/              # Utility functions

Key Architectural Patterns

PatternUsageExample
State ManagementRxDB + ZustandCollections for persistence, Zustand for UI state
Data FlowReactive subscriptionsRxDB observables through hooks
Component ArchitectureFeature-based organizationComponents grouped by domain
RoutingReact Router v6Nested routes for product details
ValidationZod schemasForm validation and data integrity

Services Overview

ServiceResponsibilityKey Methods
productGoalServiceProduct-goal link operationscreateProductGoalData(), calculateProductGoalProgress()
initiativeServiceInitiative/roadmap operationsbuildInitiative(), buildRoadmap()
teamServiceTeam member operationscreateTeamMemberData(), validateRaciAssignments(), getRaciWarnings()
portfolioServicePortfolio calculationscalculateProductHealth(), filterPortfolioProducts()
activityServiceActivity log operationsActivity creation and filtering
goalServiceGoal operationsGoal-related utilities

Hooks Overview

HookPurposeReturns
useProductsProduct CRUD and queries{ products, create, update, delete, archive }
useProductGoalsProduct-goal linking{ goals, link, unlink, reorder }
useGoalProgressGoal progress calculationsProgress metrics and status
useRoadmapRoadmap and initiative operations{ roadmap, initiatives, create, update }
useTeamMembersTeam member operations{ members, add, edit, remove, updateRaci }
useProductProjectsProduct-project linking{ projects, link, unlink }
useActivitiesActivity queries{ activities, filters }
useInitiativeProgressInitiative progressProgress from linked projects
useProjectResolverProject resolutionResolve project references

Stores Overview

StorePurposeKey State
productStoreProduct list/wizard stateviewMode, filters, wizardData, wizardStep
goalStoreGoal view stateviewMode, filters, selectedGoalId, modalOpen
roadmapStoreRoadmap view stateviewMode, selectedYear, quarterFilter
integrationStoreCross-feature UI stateprojectsTab, activityFilters, teamTab, portfolio

Quality & Compliance

Test Coverage

Test TypeLocationCoverage Target
Unit Testssrc/**/__tests__/>= 80%
Hook Testssrc/hooks/__tests__/>= 80%
Service Testssrc/services/__tests__/>= 80%
Store Testssrc/stores/__tests__/>= 80%
E2E Testse2e/Critical paths

Accessibility

RequirementStatusNotes
WCAG 2.1 AAIn ProgressRoadmap components have ACCESSIBILITY.md
Keyboard NavigationYesTab navigation supported
Screen Reader SupportPartialAria labels on key elements
Focus ManagementYesModal focus trapping

Security Considerations

ConsiderationImplementation
Input ValidationZod schemas for all forms
AuthorizationOrg/workspace isolation via IDs
Data ProtectionRxDB encryption support

FlowState Alignment

Spec-Driven Development

This app follows the FlowState Standard for spec-driven development:

  • Requirements: .flowstate/specs/{{feature-name}}/requirements.md
  • Design: .flowstate/specs/{{feature-name}}/design.md
  • Wireframes: .flowstate/specs/{{feature-name}}/wireframes.html
  • Tasks: .flowstate/specs/{{feature-name}}/tasks.md

Quality Gates

GateRequirementStatus
Test Coverage>= 80% statementsIn Progress
TypeScript StrictNo any without justificationPass
AccessibilityWCAG 2.1 AAIn Progress
Documentation100% TSDoc on public APIsIn Progress
SecurityNo critical vulnerabilitiesPass

Appendix

DocumentLocationPurpose
FLOWSTATE.md.flowstate/docs/FLOWSTATE.mdDevelopment workflow
PROCESS.md.flowstate/docs/PROCESS.mdDevelopment process
TDD.md.flowstate/steering/TDD.mdTesting standards
QUALITY.md.flowstate/steering/QUALITY.mdCode quality
ACCESSIBILITY.mdsrc/components/roadmap/ACCESSIBILITY.mdRoadmap accessibility

Version History

VersionDateAuthorChanges
1.0.02026-01-22ClaudeInitial documentation
Previous
Getting Started