Hi-Scholar/iRedu bus driver & conductor Flutter app
  • Dart 99.8%
  • Kotlin 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
harish 84cc9ab8c7 feat(driver): wire Transportapi endpoints for demoschool bus tracking
Align client paths and response parsing with docs/TRANSPORT_API.md so login,
assignment, GPS, and scan IN/OUT work against demoschool.
2026-08-10 11:14:10 +05:30
android Add iRedu driver/conductor Flutter app wired to Transportapi. 2026-08-10 11:13:00 +05:30
docs Add iRedu driver/conductor Flutter app wired to Transportapi. 2026-08-10 11:13:00 +05:30
lib feat(driver): wire Transportapi endpoints for demoschool bus tracking 2026-08-10 11:14:10 +05:30
test Add iRedu driver/conductor Flutter app wired to Transportapi. 2026-08-10 11:13:00 +05:30
.gitignore feat(driver): wire Transportapi endpoints for demoschool bus tracking 2026-08-10 11:14:10 +05:30
.metadata Add iRedu driver/conductor Flutter app wired to Transportapi. 2026-08-10 11:13:00 +05:30
analysis_options.yaml Add iRedu driver/conductor Flutter app wired to Transportapi. 2026-08-10 11:13:00 +05:30
pubspec.lock Add iRedu driver/conductor Flutter app wired to Transportapi. 2026-08-10 11:13:00 +05:30
pubspec.yaml Add iRedu driver/conductor Flutter app wired to Transportapi. 2026-08-10 11:13:00 +05:30
README.md Add iRedu driver/conductor Flutter app wired to Transportapi. 2026-08-10 11:13:00 +05:30

iRedu Driver / Conductor

Flutter app for Hi-Scholar / iRedu school bus drivers and conductors.

Package com.irinfotech.iredu_driver
Path /run/media/harish/New Volume/irinfotech/school/iredu_driver_app/
Demo school https://demoschool.irinfotech.com
School code HISCHOLAR

Features

  1. School code → URL lookup (same SaaS discovery as student Hi-Scholar app)
  2. Staff login (driver / conductor) with role permissions when API returns them
  3. Today's bus / route assignment
  4. Start / end trip
  5. Google Map: bus GPS, route stops, optional student stops (or placeholder if no Maps key)
  6. Foreground GPS upload while trip is active
  7. QR / barcode / admission-number scan for IN (onboard) and OUT (deboard)
  8. On-bus list + recent scans

Login

  1. Open app → enter school code HISCHOLAR (or paste school URL)
  2. Driver demo: username DRV01 / password Driver@123
  3. Start trip → use Map / Scan / On bus tabs

APIs: {school}/api/Transportapi/... (see docs/TRANSPORT_API.md)

Google Maps API key

Maps tiles need a key. Without one, use the in-app map placeholder (stops + GPS text still work).

Option A — android/local.properties:

MAPS_API_KEY=your_key_here
# or
GOOGLE_MAPS_API_KEY=your_key_here

Option B — AndroidManifest meta-data com.google.android.geo.API_KEY (already wired via ${MAPS_API_KEY}).

Enable Maps SDK for Android for the key in Google Cloud Console.

API contract

This app calls endpoints documented in demoschool docs/TRANSPORT_API.md.

Client path constants: lib/config/api_paths.dart
Summary: docs/TRANSPORT_API_CLIENT.md

Base: {school}/api/transport/...

When the server doc changes path names, update api_paths.dart only.

Build debug APK

cd "/run/media/harish/New Volume/irinfotech/school/iredu_driver_app"
flutter pub get
flutter build apk --debug

APK output:

build/app/outputs/flutter-apk/app-debug.apk

Install (if adb / device available):

adb install -r build/app/outputs/flutter-apk/app-debug.apk

Permissions

  • Location (fine + background declared; GPS upload runs while trip active in foreground)
  • Camera (QR/barcode scan)
  • Internet

Notes

  • Separate package from student app (com.irinfotech.hischolar)
  • Does not touch Pundi
  • Driver and conductor share this APK; UI gates scan/trip/GPS using role/permissions from API when present