Overview
Gamification feature that allows users to set reward goals (e.g., save for iPhone, vacation) to motivate work.
User Story
As a worker who lacks motivation, I want to set reward goals, so that I have something to look forward to while working.
Acceptance Criteria
Data Model
struct Reward: Identifiable, Codable {
let id: UUID
var title: String
var description: String
var targetAmount: Double
var currentProgress: Double
var category: RewardCategory
var isAchieved: Bool
var achievedAt: Date?
}
enum RewardCategory: String, CaseIterable {
case food = "🍵"
case entertainment = "🎮"
case shopping = "🛍️"
case travel = "✈️"
case savings = "💰"
}
UI Components
- Reward card in dashboard
- Progress ring/bar visualization
- Goal creation/edit form
- Category picker
Related Files
Models/Models.swift (Reward, RewardCategory)
Views/Dashboard/CyberpunkDashboardView.swift
Components/ValueStreamComponents.swift
Priority: P2
Status: 🔄 Partially Completed (basic display done, celebration pending)
Overview
Gamification feature that allows users to set reward goals (e.g., save for iPhone, vacation) to motivate work.
User Story
As a worker who lacks motivation, I want to set reward goals, so that I have something to look forward to while working.
Acceptance Criteria
Data Model
UI Components
Related Files
Models/Models.swift(Reward, RewardCategory)Views/Dashboard/CyberpunkDashboardView.swiftComponents/ValueStreamComponents.swiftPriority: P2
Status: 🔄 Partially Completed (basic display done, celebration pending)