Millian Lamiaux
54ac8326fa
chore: remove v1 features and old scaffolding
...
Remove onboarding flow (6 screens), timer engine, audio engine,
old components (themed-text/view, parallax-scroll, hello-wave),
old constants (theme, shadows, timer), and utility files that
were replaced by the v2 architecture.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-20 13:23:04 +01:00
Millian Lamiaux
fa189fe72e
feat: onboarding flow (6 screens) + audio engine + design system
...
Onboarding:
- 6-screen flow: Problem → Empathy → Solution → Wow → Personalization → Paywall
- useOnboarding hook with Zustand + AsyncStorage persistence
- MiniTimerDemo with live 20s timer + haptics
- Auto-redirect for first-time users
- Mock RevenueCat for dev testing
Audio:
- useAudioEngine hook with expo-av
- Phase sounds (count_3/2/1, beep, bell, fanfare)
- Placeholder music tracks
Design System:
- Typography component + constants
- GlassView component
- Spacing, shadows, animations, borderRadius constants
- Extended color palette (phase gradients, glass, surfaces)
Timer:
- Fix: handle 0-duration phases (immediate advance)
- Enhanced TimerDisplay with phase gradients
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-17 21:52:23 +01:00
Millian Lamiaux
31bdb1586f
feat: timer engine + full-screen timer UI
...
Implement the core timer feature following the src/features/ architecture:
- useTimerEngine hook: drift-free Date.now() delta countdown (100ms tick),
explicit state machine (IDLE → GET_READY → WORK → REST → COMPLETE),
event emitter for external consumers (PHASE_CHANGED, ROUND_COMPLETED,
COUNTDOWN_TICK, SESSION_COMPLETE), auto-pause on AppState interruption
(phone calls, background), expo-keep-awake during session
- TimerDisplay component: full-screen animated UI with 600ms color
transitions between phases, pulse animation on countdown, flash red
on last 3 seconds, round progress dots, IDLE/active/COMPLETE views
- TimerControls component: stop/pause-resume/skip buttons with Ionicons
- Timer route (app/timer.tsx): fullScreenModal wiring hook → display
- Home screen: dark theme with START button navigating to /timer
- Project docs: CLAUDE.md (constitution), PRD v1.1, skill files
- Shared constants: PHASE_COLORS, TIMER_DEFAULTS, formatTime utility
- Types: TimerPhase, TimerState, TimerConfig, TimerActions, TimerEvent
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-17 19:05:25 +01:00