Final Year License Project

KaynBus

Real-time bus geolocation web and mobile platform for urban mobility, combining a React web interface, PHP REST APIs, MySQL, Android GPS transmission, and Google Maps visualization.

Role

Full-Stack Developer & Mobile Integration

  • React.js
  • Tailwind CSS
  • PHP 5.6
  • MySQL
  • XAMPP
  • Android Java
  • REST APIs
  • Axios
  • Volley
  • Google Maps API
  • Postman
  • UML
  • Scrum
KaynBus cover screenshot

Context

Project overview

KaynBus addresses a transport visibility problem: users need bus position, route, stop, and trip information, while administrators need a structured way to manage the transport network.

Problem

Urban bus users often lack clear visibility into bus positions, stops, lines, and route planning, while administrators need structured tools to manage transport data and operational reports.

Objectives

  • Web, mobile, backend, and database modules separated around REST API communication and JSON payloads.
  • Android Java mobile app sends GPS positions to the backend, while the React frontend consumes location data through Axios.
  • Google Maps integration displays bus positions and routes, with an admin dashboard for transport entities, reports, and statistics.

Solution

What was built

Built a web and mobile platform where users can visualize bus positions, consult lines and stops, manage favorites, and plan trips, while administrators manage lines, buses, stops, routes, users, reports, and statistics.

Why this approach

The project was developed as a final-year license project for a web and mobile intelligent transportation system, with local deployment through XAMPP and careful separation between clients, backend, and database.

Architecture

A structured view of the technical blocks and responsibilities planned in the project.

Frontend

Frontend

React.js and Tailwind CSS web platform for users and administrators, covering maps, lines, stops, favorites, trip planning, dashboards, reports, and statistics.

Backend

Backend

PHP 5.6 backend exposing REST APIs for authentication, transport entities, reports, GPS data, and client-server communication.

Database

Database

MySQL relational model for users, lines, stops, routes, buses, favorites, reports, and GPS position data in a local XAMPP environment.

Authentication

Authentication

User authentication implemented for the web platform, with access flows separated from transport management workflows.

Integrations

Integrations

Android Java GPS sender using Volley, React API consumption with Axios, Google Maps API for geolocation display, Postman API validation, UML documentation, and Scrum project organization.

Technical challenges

  • Designing REST API communication between React, PHP, MySQL, and the Android GPS sender.
  • Representing transport entities such as lines, stops, routes, buses, users, favorites, and reports in a relational MySQL model.
  • Keeping real-time map updates understandable without claiming production-grade infrastructure.
  • Testing API behavior, GPS transmission, and map rendering in a local XAMPP environment.

Engineering decisions

Web, mobile, backend, and database modules separated around REST API communication and JSON payloads.

Android Java mobile app sends GPS positions to the backend, while the React frontend consumes location data through Axios.

Google Maps integration displays bus positions and routes, with an admin dashboard for transport entities, reports, and statistics.

Quality & testing

Quality is presented as a progressive engineering approach: targeted tests, readability, static analysis, and documented decisions.

Testing approach

My role covered full-stack development, mobile integration, REST API communication, database modeling, Google Maps integration, Postman validation, and documentation through UML and Scrum artifacts.

Maintainability and analysis

  • Postman
  • Readable architecture and separated responsibilities

Results

  • Final-year license project demonstrating web and mobile integration, GPS data transmission, REST APIs, Google Maps visualization, and admin dashboard workflows.
  • Local XAMPP tests observed API responses around 400-500 ms for key data requests, map loading around 1.2-1.5 seconds, and GPS position refresh around every 5 seconds.
  • Tested locally with 10-20 simulated users; these are local validation results, not production performance or user claims.
  • No public GitHub repository, production deployment, or production usage metrics are claimed.

Lessons learned

These takeaways turn the project into evidence of technical reasoning, not just a feature list.

  • Turn "Urban bus users often lack clear visibility into bus positions, stops, lines, and route planning, while administrators need structured tools to manage transport data and operational reports." into explicit technical decisions.
  • Present trade-offs clearly so an engineering team can review the reasoning.
  • Connect architecture, testing, and maintainability to a concrete problem.