School break time friend finder
At my school, students often had gaps in their schedules. In between lessons scheduled for the day, one would often have breaks in between. But because you chose a personalized package of classes to follow, everyone's schedule was also different. So, it would be hard to know with whom you could spend those breaks! To solve this, I developed this app. It allows students to find with whom they have breaks so they can hang out with them whilst waiting for the next class π. The app was actually used by students in my school. Very cool!
Building the app
The entire app is quite sophisticated. The various components can be laid out as follows:
- Node.js backend (Github)
- Has three main responsibilities:
(1) to scrape student schedules off HTML pages into a MongoDB database. Scraping is done using Cheerio and communication with MongoDB via MongoJS.
(2) parse the schedules into a relational format and compute what odd break-time hours exist.
(3) expose the MongoDB database as an API. - Ember.js frontend (Github)
- This front-end then consumes the API data using ember-data. I'm using Bootstrap as a UI framework so I don't have to build all the buttons, tables and interfacing myself.
... the relational mapping in the database is as follows:
And our working app looks as follows:
But most importantly, the functionality to see whoever shares your break-time ('tussen' in the picture below) or any classes with you:
π₯³