shmmy Live Display

Campus info dashboard appJul 2018–Jun 2021

Screenshot or cover image from shmmy Live Display

Project description

Web app displayed at a university monitor with live info about upcoming classes, bus arrivals, weather data, and announcements.

I built this project as a developer in shmmy, a student community in the School of Electrical and Computer Engineering of NTUA, and as a staff member of the school's library.

The app uses the ecedata API to fetch course class information, the API of Athens' public transportation operator, OASA, to get bus arrivals data, and DarkSky's API to show weather forecasts.

The website is displayed on a Raspberry Pi connected to a monitor in the university library, and can also show library opening/closing messages or other announcements.

Technical overview

Backend

  • Built on Node.js and Express , the backend acts as a simple proxy server for the OASA and DarkSky APIs for token concealment.
  • WebSocket endpoints allow real-time communication between server and client to publish the announcements.

Frontend

  • Custom theming with vanilla CSS .
  • React components are used to build the frontend UI.
  • Apollo acts as a GraphQL client to fetch course schedule data.

Also, the project uses react-scripts for bundling.