# AGENTS.md ## Project Overview FitAI fitness management solution: Next.js admin web app + Expo React Native mobile app for client management, payments, attendance tracking, and notifications. Monorepo with shared packages. ## Build/Test Commands - Admin: npm run dev/build/lint/typecheck/test (from apps/admin) - Mobile: npm run start/build/lint/typecheck/test (from apps/mobile) - Database: npm run build/dev/typecheck/db:push/db:studio (from packages/database) - Single test: npm test -- --testNamePattern="test name" or npm test path/to/test.test.js ## Code Style Guidelines - TypeScript strict mode, avoid `any` (warned by ESLint) - React/React Native conventions with functional components - camelCase for variables/functions, PascalCase for components - Import order: external → internal (@fitai/\*) → relative imports - Error handling with try/catch, use React Query for API errors - ESLint enforced: no-unused-vars, prefer-const, no-var - Use Zod for validation, React Hook Form for forms - Database: Drizzle ORM with SQLite, use shared schemas - Testing: Jest + Testing Library, write tests for critical functionality