How maorlv52/client-app works
This is a React Native client for account access, service-request creation and tracking, profile management, and supporting health/user screens. The main user workflow is to choose a request type, review a commitment, complete a dynamic form, submit documents, and later view request status and details. App.tsx establishes providers and navigation; feature modules follow the documented API-and-hook pattern. Several feature and navigator implementations were not sampled, so uncertain screen-to-hook wiring is not shown.
Main entry points: client.ts HTTP client · App.tsx App entry · useSubmitRequest.ts Request operations · api.ts Request API
Components 24
App runtime
- App entry
App.tsx - App providers
src/providers/index.tsx - Root navigation
src/navigation/RootNavigator.tsx
Identity
- Login and register
src/features/auth/screens/LoginScreen.tsx - Auth mutations
src/features/auth/hooks/useLogin.ts - Auth API
src/features/auth/api.ts - Persisted auth state
src/store/useAuthStore.ts
Service requests
- Choose request type
src/features/requests/screens/RequestTypeSelectionScreen.tsx - Review commitment
src/features/requests/screens/CommitmentScreen.tsx - Complete request form
src/features/requests/screens/CreateRequestFormScreen.tsx - Request operations
src/features/requests/hooks/useSubmitRequest.ts - Request API
src/features/requests/api.ts - Request documents
src/features/requests/components/RequestDocumentsSection.tsx - Request list and details
src/features/requests/screens/RequestsListScreen.tsx
Account and operations
- Home dashboard
src/features/home/screens/HomeScreen.tsx - Profile management
src/features/profile/screens/ProfileViewScreen.tsx - User administration
src/features/users/screens/UsersListScreen.tsx - Backend health check
src/features/health/screens/HealthScreen.tsx - Notifications screen
src/screens/NotificationsScreen.tsx
Shared infrastructure
- HTTP client
src/api/client.ts - Server-state provider
src/providers/QueryProvider.tsx - API configuration
src/config/index.ts
Other components
- Mobile user
- Backend API
Connections 22
- Mobile user → App entry: opens app
- App entry → App providers: wraps app
- App entry → Root navigation: renders
- App providers → Server-state provider: provides queries
- Login and register → Auth mutations: uses mutations
- Auth mutations → Auth API: requests auth
- Auth API → HTTP client: uses client
- HTTP client → API configuration: reads settings
- HTTP client → Persisted auth state: reads token
- HTTP client → Persisted auth state: clears on 401
- Complete request form → Request operations: submits request
- Request operations → Request API: calls endpoints
- Request API → HTTP client: uses client
- Request documents → Request API: manages documents
- Request list and details → Request operations: loads requests
- Choose request type → Review commitment: continues flow
- Review commitment → Complete request form: continues flow
- HTTP client → Backend API: sends HTTP
- Backend health check → Backend API: checks health
- User administration → Backend API: manages users
- Profile management → User administration: updates profile
- Home dashboard → Request list and details: offers request access