Do you sleep or work during your commute? Do you often miss your stop because of that? Are you frusterated in finding when and where your stop will take place during your commute? Do you want to be notified when your stop is approaching?
The On Transit app may be the solution for you. Equipped with a fast trip detection algorithms, it automatically predicts which bus / train you are taking based on your GPS location and time. Moreover, you can create alarms for your bus stop, which notifies you when your stop is approaching!
The On Transit project is a full stack software development project. The backend is comprised of several microservices, a Mongo DB database, and a data processor app. The frontend is a React web app and an Android app.
- Overview
- Installation
- Usage
- Credits
- License
This project is comprised of several components that work together to make the project very scalable while maintaining high performance.
Users are able to determine which bus they are on, and dispatch alerts when their stop is approaching via a web browser. The notification is dispatched via the computer's notification panel. The UI looks like this:
More details on the UI can be seen in the README file
Users can also use the Android app to know which bus they is on, and be notified when their stop is approaching.
More details on the UI can be seen in the README file
- Linux machine
- Mongo DB (optional: Mongo DB Compass)
- Node JS v8.0+
- Android Studio
- Install Mongo DB on your local machine.
- Optionally, you can install Mongo DB Compass
- Start Mongo DB by typing on the terminal
sudo service mongod start
- Please follow the installation section of README file to see how to get the latest transit data locally.
- Please follow the installation section of README file to see how to install and run the Trips Locator microservice locally.
- Please follow the installation section of README file to see how to install and run the Trip Details Microservice locally.
- Please follow the installation section of README file to see how to install and run the Vehicles Locator Microservice locally.
- Please follow the installation section of README file to see how to install and run the API Gateway Microservice locally.
- Open the port to your local network by running the comnmand
sudo ufw allow 3000
. After running the command for the first time, run it again for the second time to confirm.
- Please follow the installaton section of README file to see how to install and run the web app locally.
- Get your local network IP address by running the command
hostname -I
. Save this as it is needed to allow the Android app to connect to the API Gateway Microservice. - Please follow the installation section of README file to install and run the Android app on your local phone with the IP address you saved from the previous step.
Please note that this project is used for educational purposes and is not to be used commercially. We are not liable for any damages or changes done by this project.
Emilio Kartono, the sole creator of this project.
This project is protected under the GNU Licence. Please refer to LICENCE.txt for further details.