TransitPRO is a web-based smart transport management and booking system developed as part of the CO2060 – Software Systems Design Project at the Department of Computer Engineering, University of Peradeniya.
The system is designed to make public transport booking, vehicle rental, passenger management, and transport administration easier and more organized - for all passengers, not a single user group.
TransitPRO provides two main interfaces:
Passengers can:
Administrators can:
Search routes by pickup and destination, view departure and arrival information, vehicle details, available seats, and transport pricing.
An interactive seat map shows 🟢 available, 🔵 selected, 🔷 male-booked, 🩷 female-booked, and ⚪ other unavailable seats, backed by server-side availability checking to prevent double-booking.
Collects full name, gender, contact number, travel date, seat number, and pickup location, with phone numbers validated against the 10-digit Sri Lankan format.
Every successful booking generates a unique reference, live status, a booking timeline, and a QR digital ticket downloadable as a PDF.
Passengers receive updates on booking approval and status changes.
Users can rent available vehicles, with rental details validated by the system.
Lets users compare available transport options to make a more informed travel choice.
Admins generate trip manifests (exportable as PDF) and monitor bookings, occupancy, and operational alerts from a live dashboard.
Frontend: React.js, Vite, JavaScript, HTML5, CSS3 Backend: Node.js, Express.js, REST API Database: MongoDB, Mongoose Tools: Git, GitHub, npm, PDF generation, QR code generation, Lucide Icons, Recharts
TransitPRO follows a three-tier web application architecture: a React + Vite presentation layer, a Node.js + Express application layer, and a MongoDB data layer, connected via REST API and Mongoose.
Search Route → Select Route → Select Seat → Enter Passenger Details → Validate Information → Create Booking → Pending → Admin Approval → Approved (or Rejected) → QR Digital Ticket → Trip → Completed
Validation runs at both frontend and backend levels: required passenger fields, 10-digit phone number checks, gender validation, travel-date validation, seat selection and availability checks, booking status validation, and vehicle capacity validation.
Department of Computer Engineering, University of Peradeniya
Online payment integration, SMS and email notifications, real-time vehicle tracking, driver management, digital driver manifests, waitlist management, advanced transport analytics, and a mobile application.
TransitPRO – Smart Mobility Booking & Transport Administration System 🚍