How z4phxr/riviomobile works
Rivio Mobile is a Flutter client for tracking habits, sleep, and mood, with account and security settings. Users enter through the app, authenticate or open a tracking area, then record or review entries synchronized with the Rivio backend. The tree shows separate feature layers and shared networking, storage, and presentation code; the README documents JWT refresh, themes, connectivity handling, and visualizations. Dart implementation excerpts were not provided, so the feature-to-network wiring is represented only at a high level.
Main entry points: api_client.dart API client · main.dart Flutter app · screens Account settings · habits Habit tracking
Components 16
App experience
- Flutter app
lib/main.dart
Account and security
- Authentication
lib/features/auth - Account settings
lib/features/settings/presentation/screens - PIN security
lib/core/providers/pin_lock_provider.dart
Wellbeing tracking
- Habit tracking
lib/features/habits - Mood tracking
lib/features/mood - Sleep tracking
lib/features/sleep - Entry visualization
lib/features/habits/presentation/screens
Shared services
- API client
lib/core/network/api_client.dart - Auth interceptors
lib/core/network/interceptors - Secure storage
lib/core/storage/secure_storage_service.dart - Connectivity handling
lib/core/network/connectivity_check_service.dart - Error handling
lib/core/errors/error_handler.dart - Theme preferences
lib/core/providers/theme_provider.dart
Other components
- User
- Rivio REST API
Connections 21
- User → Flutter app: uses
- Flutter app → Authentication: opens
- Flutter app → Habit tracking: opens
- Flutter app → Mood tracking: opens
- Flutter app → Sleep tracking: opens
- Flutter app → Account settings: opens
- Authentication → API client: API access
- Habit tracking → API client: API access
- Mood tracking → API client: API access
- Sleep tracking → API client: API access
- API client → Rivio REST API: sends requests
- Rivio REST API → API client: returns data
- API client → Auth interceptors: uses
- Auth interceptors → Secure storage: reads tokens
- Auth interceptors → Rivio REST API: refreshes token
- PIN security → Secure storage: stores PIN
- Account settings → PIN security: manages lock
- Account settings → Theme preferences: selects theme
- API client → Connectivity handling: checks connection
- API client → Error handling: handles errors
- Habit tracking → Entry visualization: shows entries