feat: explore tab, React Query data layer, programs, sync, analytics, testing infrastructure
- Replace browse tab with Supabase-connected explore tab with filters - Add React Query for data fetching with loading states - Add 3 structured programs with weekly progression - Add Supabase anonymous auth sync service - Add PostHog analytics with screen tracking and events - Add comprehensive test strategy (Vitest + Maestro E2E) - Add RevenueCat subscription system with DEV simulation - Add i18n translations for new screens (EN/FR/DE/ES) - Add data deletion modal, sync consent modal - Add assessment screen and program routes - Add GitHub Actions CI workflow - Update activity store with sync integration
This commit is contained in:
28
AGENTS.md
28
AGENTS.md
@@ -305,13 +305,39 @@ const queryClient = new QueryClient({
|
||||
# TypeScript
|
||||
npx tsc --noEmit
|
||||
|
||||
# Run tests
|
||||
# Run unit tests (Vitest)
|
||||
npm test
|
||||
|
||||
# Run tests in watch mode
|
||||
npm run test:watch
|
||||
|
||||
# Run tests with coverage report
|
||||
npm run test:coverage
|
||||
|
||||
# Run Maestro E2E tests
|
||||
npm run test:maestro
|
||||
|
||||
# Lint
|
||||
npx eslint .
|
||||
```
|
||||
|
||||
#### Test Structure
|
||||
```
|
||||
src/__tests__/
|
||||
setup.ts # Mocks and test configuration
|
||||
stores/ # Zustand store tests
|
||||
hooks/ # React hooks tests
|
||||
services/ # Service layer tests
|
||||
components/ # Component logic tests
|
||||
data/ # Data validation tests
|
||||
```
|
||||
|
||||
#### Coverage Goals
|
||||
- **Stores**: 80%+ (business logic)
|
||||
- **Services**: 80%+ (API integration)
|
||||
- **Hooks**: 70%+ (timer, purchases)
|
||||
- **Components**: 50%+ (critical UI)
|
||||
|
||||
### Key Takeaways
|
||||
|
||||
1. **Start simple**: Always test in Expo Go before creating custom builds
|
||||
|
||||
Reference in New Issue
Block a user