explicit do not interact with .claude files
This commit is contained in:
85
agents/cto/life/projects/nessa/facts.yaml
Normal file
85
agents/cto/life/projects/nessa/facts.yaml
Normal file
@@ -0,0 +1,85 @@
|
||||
# Nessa Project Facts
|
||||
|
||||
## Project Overview
|
||||
- Type: "iOS fitness tracking application (Strava competitor)"
|
||||
- Tech Stack: "Swift, SwiftUI, GRDB (local database), HealthKit"
|
||||
- Location: "/home/mike/code/Nessa"
|
||||
- Repository: "https://git.freno.me/Mike/Nessa.git"
|
||||
- Target: "2,000 paying users = $10k MRR"
|
||||
|
||||
## Architecture
|
||||
|
||||
### Database
|
||||
- ORM: "GRDB with migrations"
|
||||
- Schema: "users, workouts, social features (profiles, follows, kudos, comments), segments"
|
||||
- Migration pattern: "Incremental migrations with existence checks"
|
||||
- DatabaseManager: "Centralized database access with read/write methods"
|
||||
|
||||
### Current Features
|
||||
- Workout types: 11
|
||||
- HealthKit integration: true
|
||||
- Basic dashboard and authentication: true
|
||||
- Social features: "profiles, follows, kudos, comments, activity feed"
|
||||
- Segments with leaderboards and efforts: true
|
||||
- Heart rate tracking: true
|
||||
|
||||
### Subscription Model (Planned)
|
||||
- Free price: "$0"
|
||||
- Free features: "Core features except route planning, AI features, offline maps"
|
||||
- Plus price: "$4.99/mo"
|
||||
- Plus features: "Route planning, offline maps, advanced segments, personal heatmaps"
|
||||
- Pro price: "$9.99/mo"
|
||||
- Pro features: "AI training plans, premium challenges, priority support, fitness tracking"
|
||||
|
||||
### Subscription Implementation
|
||||
- Payment: "StoreKit 2 for iOS native subscriptions"
|
||||
- Product IDs: "com.nessa.subscription.plus.monthly, com.nessa.subscription.pro.monthly, com.nessa.subscription.plus.yearly, com.nessa.subscription.pro.yearly"
|
||||
- Feature Gating: "SubscriptionService with PremiumFeature enum"
|
||||
- Backend: "Receipt validation endpoints, App Store Server Notifications webhook"
|
||||
- Timeline: "4 weeks (6 phases)"
|
||||
- Sub-issues: "FRE-108 through FRE-112"
|
||||
|
||||
## Feature Roadmap
|
||||
|
||||
### Phase 1 MVP Status
|
||||
- Status: "Completed"
|
||||
- Features: "Activity tracking + feed + kudos + comments, Profiles + follow system, Basic segments"
|
||||
|
||||
### Phase 2 Community Growth
|
||||
- Issue: "FRE-92"
|
||||
- Features: "Clubs system, Monthly challenges, 1v1 challenges, Share to social, Invite system"
|
||||
- Timeline: "10 weeks"
|
||||
- Sub-issues: "FRE-102 through FRE-107"
|
||||
|
||||
### Phase 3 Premium Features
|
||||
- Features: "Route planning with turn-by-turn, AI training plans, Offline maps, Advanced analytics"
|
||||
|
||||
## Revenue Targets
|
||||
- Month 1: "$500-1,000 MRR (100 paying users)"
|
||||
- Month 3: "$2,500-5,000 MRR (500 paying users)"
|
||||
- Month 6: "$5,000-10,000 MRR (1,000 paying users)"
|
||||
- Year 1: "$10,000+ MRR (2,000 paying users)"
|
||||
|
||||
## Technical Debt and Considerations
|
||||
- Subscription infrastructure: "Not yet implemented"
|
||||
- Backend API: "Required for subscriptions (not yet built)"
|
||||
- Architecture: "Local-first with GRDB (sync TBD)"
|
||||
- Competitive goal: "Feature parity with Strava"
|
||||
|
||||
## Key Files
|
||||
- User model: "Nessa/Models/User.swift"
|
||||
- Database manager: "Nessa/Core/Database/DatabaseManager.swift"
|
||||
- Subscription plan: "plans/2026-03-09-subscription-tiers-implementation.md"
|
||||
- Community plan: "plans/2026-03-09-phase2-community-growth.md"
|
||||
|
||||
## Related Issues
|
||||
- Strava parity: "FRE-73"
|
||||
- Community growth: "FRE-92 (in_review)"
|
||||
- Subscription tiers: "FRE-94 (in_review)"
|
||||
- Subscription sub-issues: "FRE-108 to FRE-112"
|
||||
- Community sub-issues: "FRE-102 to FRE-107"
|
||||
|
||||
## Access Metadata
|
||||
- created: "2026-03-09"
|
||||
- last_accessed: "2026-03-09T21:14:00Z"
|
||||
- access_count: 1
|
||||
Reference in New Issue
Block a user