The MND mobile application is built with Flutter, providing a cross-platform solution for Android and iOS devices. The app enables students to plan bus routes, view real-time schedules, save favorite routes, and visualize journeys on interactive maps.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/ihfaz297/MND/llms.txt
Use this file to discover all available pages before exploring further.
Architecture
The application follows a clean, layered architecture:Cross-Platform Support
The Flutter app runs natively on:- Android (API level 21+)
- iOS (iOS 11.0+)
Core Features
Route Planning
Users can search for optimal bus routes between campus locations, with support for:- Multiple route options (fastest, cheapest)
- Transfer information
- Time-based scheduling
- Walking/local transport segments
Real-time Bus Schedules
View upcoming bus departures at any stop with:- Live countdown timers
- Route information
- Destination details
Map Visualization
Interactive Google Maps integration showing:- Route polylines color-coded by transport mode
- Start/end/transfer markers
- Distance and duration statistics
User Favorites
Authenticated users can save frequently used routes for quick access.File Structure
Configuration (config/)
api_config.dart- API endpoints and Google Maps configurationapp_theme.dart- Material Design theme settings
Models (models/)
route_option.dart- Route search resultsroute_leg.dart- Individual route segmentsbus_schedule.dart- Bus departure informationfavorite.dart- Saved route datanode.dart- Campus locations/stopsuser.dart- User profile datacampus_building.dart- Building information
Services (services/)
api_service.dart- Base HTTP clientroute_service.dart- Route planning APIbus_service.dart- Bus schedule APIauth_service.dart- Authenticationfavorite_service.dart- Favorites managementdirections_service.dart- Google Maps Directions API
Screens (screens/)
home/- Route search interfacebuses/- Upcoming bus schedulesfavorites/- Saved routesroute_map/- Interactive map viewprofile/- User settingsauth/- Login/authentication
Key Dependencies
Frompubspec.yaml:
App Initialization
The app initializes inmain.dart:
Navigation Structure
The app uses a bottom navigation bar with 4 main screens:lib/main.dart:66-71
Environment Variables
Required configuration in.env file:
GOOGLE_DM_API_KEY- Google Maps/Directions API key- Backend API URL is configured in
lib/config/api_config.dart