A professional Flutter ride-booking application focused on transportation, routing, ride requests, payments, and account management.
Onboarding Location Permission![]() |
Login![]() |
Home![]() |
Search Destination![]() |
Search Destination Android![]() |
Set Ride![]() |
Finding Driver![]() |
Driver Chat![]() |
Notifications![]() |
Profile Menu![]() |
Edit Profile![]() |
Primary APK / Android access: Get RidezToHealth on Google Play
| App | Google Play | App Store |
|---|---|---|
| RidezToHealth | Open | Open |
| RidezToHealth Driver | Open | Open |
- First-time install detection and onboarding flow
- Clean authentication journey with login, registration, OTP verification, and password reset
- Home dashboard for ride-related discovery and app entry points
- Profile editing and account-related flows
- Trip and activity history views
- Notification and menu-based settings experience
- Destination search and service selection
- Maps integration with location access and route support
- Ride request and transportation journey flow
- Service browsing and service-specific interactions
- Payment handling and wallet-related experiences
- Real-time communication through Socket.IO
- Token and local user data persistence
- Image and file picking support
- Embedded web content support where required
- Modular structure for scalable feature development
get
diohttpsocket_io_client
shared_preferencesget_storage
google_maps_fluttergeolocatorlocationgeocodingflutter_polyline_points
cached_network_imageshimmerflutter_svgimage_pickerfile_pickerwebview_flutterintl
flowchart TD
A[App Launch] --> B{First Time Install?}
B -- Yes --> C[Onboarding]
C --> D[Authentication]
B -- No --> E{User Logged In?}
E -- Yes --> F[Main App]
E -- No --> D
D --> F
F --> G[Home]
F --> H[Services]
F --> I[History]
F --> J[Profile]
G --> K[Search Destination]
K --> L[Ride Request]
L --> M[Payment]
M --> I
J --> N[Notifications]
J --> O[Edit Profile]
The project uses a layered and maintainable Flutter structure:
- Feature-first organization keeps modules grouped by business capability
- GetX manages navigation, controllers, and dependency injection
- Repository and service layers isolate network/data concerns from UI code
- Reusable core and helper modules centralize constants, utilities, and shared widgets
- Remote and local data sources support persistent sessions and real-time updates
- Presentation Layer: Flutter screens, widgets, and GetX controllers
- Business Logic Layer: Controllers and repositories that coordinate use cases
- Data Layer: Services, remote clients, and local persistence helpers
- Infrastructure Layer: App constants, themes, utilities, DI, and socket/API clients
- Remote communication is handled through
ApiClientandSocketClient - Local persistence uses
SharedPreferencesandget_storage
lib/
main.dart # App entry point, DI bootstrap, initial routing
app.dart # Main shell and bottom navigation setup
core/ # Shared constants, themes, widgets, onboarding, utilities
feature/ # Feature modules
auth/ # Authentication flows and logic
home/ # Home dashboard and primary user flows
map/ # Maps, routing, and geolocation logic
payment/ # Payment-related UI and logic
profileAndHistory/ # Profile management and ride/trip history
serviceFeature/ # Service discovery and service details
helpers/ # Dependency injection, API client, socket client
navigation/ # Navigation widgets/components
utils/ # App-wide helpers, constants, and utility logic
assets/
images/ # Image assets
icons/ # Icon assets
fonts/ # Custom fonts referenced by pubspec.yaml
Before running the app, ensure your environment includes:
- Flutter SDK installed and configured
- Dart SDK compatible with the project
- Android Studio or VS Code with Flutter extensions
- Android SDK / Xcode toolchain configured
- A physical device or emulator/simulator
- Valid API endpoints and map credentials
Check your Flutter environment:
flutter doctor










