Inspiration
In Kenya, many students in boarding schools travel long distances home at the end of school terms using booked buses. As phones are not allowed in schools, parents often book buses for the students through teachers. Students then travel alone, making it difficult for parents to know where the bus is, whether the child has boarded safely, or the expected arrival time.
The current transport system lacks:
- Real-time visibility of bus location
- Transparent communication between drivers, schools, and parents
- Accountability mechanisms to confirm student boarding and arrival
This gap causes anxiety for parents and safety risks for students, especially during long journeys.
What it does
We developed a web-based bus tracking and student transport monitoring system that enables:
- Drivers to share live bus location automatically
- Parents to track their child’s bus in real time
- Parents to confirm boarding and arrival
Instructions are shown on homepage: https://megatrans.onrender.com/
How we built it
For the project, I used MERN stack (MongoDB for database persistence, React for frontend, NodeJS and ExpressJS for the backend). I also used OpenStreetMap public API with leafletJS to show map and track driver bus location. For deployment, I used Render.
Challenges we ran into
- Real-time location tracking: Updating bus positions dynamically was tricky.
- Map integration: Some routes looked unrealistic in OpenStreetMap routing.
- Authentication & Role-based views: Implementing different views for Drivers, Parents, and Admins required careful handling.
Accomplishments that we're proud of
- I was able to successfully use polling so that parents and admins could track drivers location. I learnt to use OpenStreetMap and LeafletJS relatively well.
What we learned
- Integrating OpenStreetMap and LeafletJS for dynamic maps
- Handling live location services in a web app
- Managing role-based authentication in MERN stack
What's next for MegaTrans
- Use WebSockets for live location updates instead of polling
- Use WebSockets for instant notifications
- Calculate Estimated Time of Arrival (ETA) based on remaining route
- Integrate email, SMS, or WhatsApp notifications
Log in or sign up for Devpost to join the conversation.