saravanakumardb1
4341502e33
feat(location): add CoreLocation geofencing triggers + MapKit travel time intelligence
2026-02-27 22:35:48 -08:00
saravanakumardb1
351410ba41
feat(calendar): add EventKit calendar sync — read events, convert to timers, auto-sync every 15m
2026-02-27 22:35:36 -08:00
saravanakumardb1
2fc277b663
feat(macos): add macOS menu bar app — popover timeline, quick timer, keyboard shortcut, settings
2026-02-27 22:35:26 -08:00
saravanakumardb1
a2e8f985d2
feat(web): recurring timer badge, recurringTimerId field, generateTimerFromRecurrence helper
2026-02-27 22:33:57 -08:00
saravanakumardb1
d909830fcd
feat(web): snooze suggestion card on Dashboard, event countdown large display
...
- Dashboard: adaptive snooze suggestion cards (dismissable, max 2 shown, pattern-based)
- TimerCard: event countdown type gets large days display with milestone progress bar
- Progress bar color-codes: accent → warning (70%) → danger (90%)
- Shows days + hours remaining with target date
- Updated roadmap: marked snooze suggestion card and event visual as completed
- 373 tests across 16 files, tsc clean
2026-02-27 22:31:20 -08:00
saravanakumardb1
f61483e7a5
feat(web): calendar import preview, repeat timer, CSV export, compact mode
...
- Calendar import preview: parse .ics → show events with conflict indicators → confirm/cancel before importing
- History page: repeat timer button (recreates alarm at same time-of-day, countdown with same duration)
- History page: CSV export (Label, Type, State, Urgency, Category, Created, Completed, Duration)
- Settings: compact mode toggle (persisted to localStorage, sets data-compact attribute)
- Updated roadmap Week 5 items
- 373 tests across 16 files, tsc clean
2026-02-27 22:28:36 -08:00
saravanakumardb1
48a4b7d024
feat(web): prep-time intelligence, adaptive snooze, event countdown, TimerCard badges
...
- Prep time intelligence (lib/prep-time.ts): 12 keyword rules + 6 category defaults, prep/travel time suggestions, warning formatter, shouldShowPrepWarning() (22 tests)
- Adaptive snooze learning (lib/adaptive-snooze.ts): snooze pattern tracking, label normalization, suggestion engine with 5+ data point threshold, localStorage persistence (22 tests)
- Event countdown timer: createEvent factory with milestone warnings (30/7/3/1 days), addEvent store action, Event tab in CreateTimerModal with date picker
- TimerCard: category badge, chain link badge, prep time warning integration
- Analytics: added 'event' to trackTimerCreated type union
- Updated roadmap: marked prep time, adaptive snooze, event countdown, export/import, history as completed
- Phase 2 exit criteria: 6/10 met, 373 tests across 16 files, tsc clean
2026-02-27 22:25:36 -08:00
saravanakumardb1
9fcd256364
docs(roadmap): update Week 9 — iCloud sync, crash reporting, feedback form complete
2026-02-27 22:24:06 -08:00
saravanakumardb1
e87e027c0f
feat(testflight): add MetricKit crash reporting + feedback form in Settings
2026-02-27 22:24:00 -08:00
saravanakumardb1
01c0f5759e
feat(sync): add iCloud sync via NSUbiquitousKeyValueStore with merge strategy
2026-02-27 22:23:45 -08:00
saravanakumardb1
5a9a855ec9
docs(roadmap): update Phase 3 exit criteria — 9/11 checkmarks complete
2026-02-27 22:21:13 -08:00
saravanakumardb1
2c224c5c4f
test(week9): add urgency tests (14) + accessibility tests (14) + update roadmap Week 9
2026-02-27 22:20:29 -08:00
saravanakumardb1
3bec3602d2
feat(a11y): add VoiceOver, Dynamic Type, Reduce Motion, High Contrast accessibility helpers
2026-02-27 22:20:22 -08:00
saravanakumardb1
be0e8748b2
feat(ipad): adaptive layout — NavigationSplitView sidebar + timer detail side panel on iPad
2026-02-27 22:20:15 -08:00
saravanakumardb1
29cd7ffc62
fix(deploy): add --webpack flag to dev script for Serwist compatibility
2026-02-27 22:19:21 -08:00
saravanakumardb1
4b579750a2
test(week8): add reschedule engine tests (14) + gamification engine tests (15) + update roadmap
2026-02-27 22:14:01 -08:00
saravanakumardb1
40fd63e748
feat(gamification): integrate gamification into app — badge celebration overlay, history stats+badges tabs
2026-02-27 22:13:50 -08:00
saravanakumardb1
58dde35cc9
feat(gamification): add streak card, focus score card, badge grid, confetti, weekly summary card with share
2026-02-27 22:13:44 -08:00
saravanakumardb1
f6208e65d1
feat(gamification): add streak engine, focus score, badge definitions, and GamificationStore
2026-02-27 22:13:39 -08:00
saravanakumardb1
a86ed05271
feat(reschedule): add reschedule sheet UI, undo banner, suggestion banner, and timeline integration
2026-02-27 22:13:32 -08:00
saravanakumardb1
931746a119
feat(reschedule): add AI reschedule engine with shift, skip, push, undo and smart suggestions
2026-02-27 22:13:27 -08:00
saravanakumardb1
fc05ea12ba
feat(web): routine editor/runner UI, linked timers, routines page
...
- RoutineEditor component: add/remove/reorder steps, transition types, notes, save-as-template toggle, total duration display
- RoutineRunner component: countdown ring, step dots, progress bar, next step preview, pause/resume/skip/done/cancel, completion celebration
- Routine store (lib/routine-store.ts): Zustand + localStorage persistence, template management, auto-advance via tickRoutines()
- Routines page (app/routines/): template browser, active runner, ready queue, past routines
- Linked timers engine (lib/linked-timers.ts): chain building/append/remove with relinking, 3 presets (Pasta, Laundry, Meeting Prep), downstream queries
- Linked timers tests (27 tests)
- Dashboard: added Routines + nav link
- Updated roadmap.md Week 3 items
- 329 tests passing (14 test files), tsc clean
2026-02-27 22:07:16 -08:00
saravanakumardb1
0b798bf9ff
test(shared): add SharedTimerData tests + update roadmap Week 7 checkmarks
2026-02-27 22:01:57 -08:00
saravanakumardb1
016a3d14e5
feat(project): add widget, watchOS, and complications targets to project.yml with dependencies
2026-02-27 22:01:51 -08:00
saravanakumardb1
36523334c4
feat(siri): add App Intents for Siri Shortcuts — set timer, start pomodoro, next timer info
2026-02-27 22:01:46 -08:00
saravanakumardb1
71bda1dab9
feat(watch): add watchOS app with timeline, timer detail, quick presets, haptics, and complications
2026-02-27 22:01:39 -08:00
saravanakumardb1
5936016a36
feat(widget): add WidgetKit widgets — small, medium, lock screen with AppIntentTimelineProvider
2026-02-27 22:01:34 -08:00
saravanakumardb1
4b1cbcf81b
feat(live-activity): add ActivityKit attributes and LiveActivityManager for Dynamic Island
2026-02-27 22:01:28 -08:00
saravanakumardb1
46d9866253
feat(shared): add App Groups data layer for iOS/Watch/Widget communication
2026-02-27 22:01:24 -08:00
saravanakumardb1
38bb2629e9
feat(web): Phase 2 — stats, categories, recurring, export/import, calendar .ics
...
- Statistics + streaks engine (lib/stats.ts) with daily/weekly/monthly breakdowns, on-time rate, focus time, streak tracking (23 tests)
- Categories/tags system (lib/categories.ts) with 6 built-in categories, custom tags, default urgency+cascade per category (29 tests)
- Recurring timer engine (lib/recurrence.ts) with daily/weekday/weekend/weekly/biweekly/monthly/custom rules, skip/pause, DST edge cases (37 tests)
- Timer export/import as JSON (lib/export.ts)
- Calendar .ics import (lib/calendar-import.ts) with RFC 5545 parsing, conflict detection, priority-to-urgency mapping (26 tests)
- StatsView component with Recharts (bar, line, pie charts)
- StreakCard component with milestone badges
- History page (/history) with stats, history search/filter, import/export
- Category picker in CreateTimerModal with auto urgency+cascade defaults
- Category filter chips on Dashboard + History link in header
- Installed recharts dependency
- Updated roadmap.md Phase 2 Week 4-5 with completion status
- 302 tests passing (up from 82 in Phase 1)
2026-02-27 21:59:09 -08:00
saravanakumardb1
e6b97fcbf0
feat(deploy): Phase 1 polish — analytics, install prompt, a11y, PWA icons
2026-02-27 21:57:43 -08:00
saravanakumardb1
1235a2b218
docs: update roadmap Phase 2 with completed items
...
Routine engine (45 tests), NL parser (37 tests), context messages (23 tests),
focus mode, and CreateTimerModal NL integration all marked complete.
Total: 276 tests passing, tsc clean.
2026-02-27 21:46:24 -08:00
saravanakumardb1
065bb1b1a0
feat(web): add focus mode UI and NL parser integration
...
- FocusView component: duration presets, 'until next timer' mode, pomodoro shortcut,
full-screen countdown ring, pause/resume, session summary with stats
- Focus page at /focus with minimal header and back navigation
- NL parser integrated into CreateTimerModal with live parse preview,
Enter-to-create, and type/label/urgency detection display
- Dashboard header: added Focus Mode (Eye icon) link
2026-02-27 21:45:37 -08:00
saravanakumardb1
8fe5e8e787
feat(web): add routine engine, NL parser, and context messages
...
- Routine engine: data model, state machine (start/pause/resume/complete/skip/cancel),
4 built-in templates (Morning, Workout, Cooking, Wind-Down), template instantiation
- NL parser: regex-based parsing for relative times, absolute times, durations,
pomodoro, urgency detection, label extraction (no LLM dependency)
- Context messages: keyword→message rules for 20+ categories (meetings, flights,
cooking, health, etc.), warning message formatting
- 105 unit tests (45 routines + 37 NL parser + 23 context messages)
2026-02-27 21:42:29 -08:00
saravanakumardb1
885a2685ad
docs(ios): update roadmap Phase 3 Week 6 with iOS app foundation progress
...
- Xcode project setup: ✅ (XcodeGen, iOS 17+, zero third-party deps)
- Timer engine Swift port: ✅ (TimerEngine, Cascade, Urgency, Format, TimeBlindness)
- Data models: ✅ partial (CMTimer Codable struct, UserDefaults persistence)
- iOS screens: ✅ (Timeline, CreateTimer, Pomodoro, History, Settings, AlarmOverlay)
- Notification scheduling: ✅ (UNUserNotificationCenter, cascade warnings, actions)
- Haptic engine: ✅ (urgency-mapped feedback patterns)
- XCTest: 58 tests passing (TimerEngine, Cascade, Format)
- Remaining: Recurrence, NLParser, ContextMessages (Phase 2 web deps), SwiftData migration
2026-02-27 21:27:02 -08:00
saravanakumardb1
445e25bee1
docs: final roadmap update with Serwist SW, toast fallback, Pomodoro celebration commits
2026-02-27 21:24:36 -08:00
saravanakumardb1
35f53e87f5
feat: add Pomodoro session celebration with trophy animation
2026-02-27 21:23:45 -08:00
saravanakumardb1
a1120a56e8
feat: add in-app toast system with notification fallback for denied permissions
2026-02-27 21:21:46 -08:00
saravanakumardb1
28dfa9f929
feat: add Serwist service worker for offline PWA support
2026-02-27 21:18:43 -08:00
saravanakumardb1
cae442d099
test: add time-blindness and urgency tests (82 total passing)
2026-02-27 21:16:49 -08:00
saravanakumardb1
755d030c7a
test: add 13 Zustand store tests (66 total passing)
2026-02-27 21:15:30 -08:00
saravanakumardb1
815e1cd7fe
docs: comprehensive roadmap update with all Phase 1 checkmarks and commit links
2026-02-27 21:11:39 -08:00
saravanakumardb1
1883697de7
feat: add settings link in dashboard header
2026-02-27 21:10:25 -08:00
saravanakumardb1
cad95be62a
feat: add Zod schemas, settings page with sound preview, notification controls
2026-02-27 21:09:33 -08:00
saravanakumardb1
d2b5563414
feat: add time blindness aids, feedback button, tab title flash, system theme detection
2026-02-27 21:08:22 -08:00
saravanakumardb1
b39652accf
feat: add Web Audio sound system with urgency-mapped tones and notification integration
2026-02-27 21:06:25 -08:00
saravanakumardb1
a3ebb9fd6d
docs: update roadmap.md with Phase 1 progress checkmarks and commit links
2026-02-27 21:03:27 -08:00
saravanakumardb1
02f9a5fc12
ci: add GitHub Actions workflow for lint, typecheck, and test
2026-02-27 21:01:59 -08:00
saravanakumardb1
2a4d66faa9
feat: add dark/light theme toggle with localStorage persistence
2026-02-27 21:01:33 -08:00
saravanakumardb1
ace036b1fc
feat: add PWA manifest, landing page, privacy/terms pages, format tests (53 tests)
2026-02-27 21:00:34 -08:00