Skip to content

tandeshao/NUSRoutes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NUSRoutes

Orbital 2021
Proposed Level of Achievement: Artemis
By: Alvin Tay & Tan De Shao.

NUSRoutes is a web app with an intuitively clear and concise UI for NUS Shuttle Bus Services, including a route recommendation feature.

Features

  • Route recommendation of shortest bus route from one place to another within NUS.
  • Proximity Alarm.
  • Nearest Bus Stops.
  • Arrival Time of busses.
  • Bus services infographic.

How are we different from NUSNextBUS?

  • Route recommendation

    • Manual route planning with NUSNextBUS is a thing of the past.
    • Let NUSRoutes do it for you!
  • Proximity Alarm

    • Tired and want to take a quick nap?
    • NUSRoutes got you covered and notifies when your destination is nearing.
  • Web app

    • No download required!
    • Runs on the browser and is cross-platform.
  • Elegant and intuitive user interface

    • A few clicks is all it takes.
    • We put in our best effort to make NUSRoutes modern yet super intuitive.

Platforms

Website
Telegram

Documentations

Report
Poster
Video

Getting Started

  • Clone the github repo.
  • There are three folders, Client, server and Telegram.
  • For each folder, run “npm install” to install the required dependencies.
  • Create a .env file in each folder. Include these details (Your own credentials)
    • Client (Firebase):
      • REACT_APP_UNSPLASH_APIKEY=
      • REACT_APP_UNSPLASH_AUTHDOMAIN=
      • REACT_APP_UNSPLASH_PROJECTID=
      • REACT_APP_UNSPLASH_STORAGEBUCKET=
      • REACT_APP_UNSPLASH_MESSAGINGSENDERID=
      • REACT_APP_UNSPLASH_APPID=
    • Server (Google Map API):
      • API_KEY=
      • AUTH_KEY=
    • Server => repo folder (Google Map API):
      • Same as above, API_KEY and AUTH_KEY
  • To run locally:
    • Client: npm start
    • Server: node server.js
    • Telegram:
      • Open git bash
      • cd to Telegram folder
      • $ BOT_TOKEN='TOKEN' npm start
        • Replace 'TOKEN' with the API Token of your bot
  • For deployment, Vercel was used to deploy the Client (Frontend). Heroku was used to deploy the server (backend) and Telegram.