BusBuddy is a revolutionary real-time bus tracking system developed as an undergraduate thesis project in Computer Science at the University of Calabria. This application enhances the public transportation experience with a variety of features aimed at providing users with up-to-date bus information.
The project consists of two main components:
- Client app (this repository)
- Tracker app (private repository)
- Real-time bus tracking: Track your bus's current location and estimated arrival time.
- Stop details: Check upcoming buses and their schedules for a specific bus stop.
- Map search: Search for bus stops on the map to change monitoring zones.
- Favorites: Save favorite buses and stops for quick access.
- Complete bus line list: Access a comprehensive list of registered bus lines along with their schedules.
- Bus delays info: Stay informed about bus delays and receive predictions for upcoming arrivals.
- Client App: Built using Ionic Framework with Angular, enabling multi-platform development for both iOS and Android.
- Backend Server: Developed with SpringBoot.
- Database: Utilizes Firebase as a non-relational database, suitable for managing large and diverse datasets.
To install and run the application, follow these steps:
- Node.js (which includes npm)
- Angular CLI
- Ionic CLI
- IntelliJ IDEA (or any IDE of your choice for Java development)
- Clone the repository:
git clone https://github.com/Daniel-Sensei/BusBuddy.git
cd BusBuddy/frontend- Install dependencies:
npm install
- Set up backend:
- Open the backend project in IntelliJ IDEA.
- Download dependencies specified in
pom.xmlusing Maven.
- Run the application:
- Client app:
This command serves the app in the browser for development purposes.
ionic serve - Backend server:
- Build and run the SpringBoot application from IntelliJ IDEA.
Feel free to use and modify this application to suit your transportation needs. For any issues or contributions, please visit the repository and submit your queries or pull requests.