Intel'Mirror

Smart mirror software powered by a NodeJS backend and a SQLite database

Smart mirror software powered by a NodeJS backend and a SQLite database

Intel’Mirror was made during my second year of university. It was a six persons group project and we had to build an user interface for a smart mirror.

To detect the user movements, we choose to use a camera and the JavaScript Hand Gesture library. Two pre-defined hand gestures and 9 zones allow the user to navigate in the smart mirror software and interact with the applications.

We also designed and developed a software store, allowing the user to download and install new applications on the smart mirror. The default smart mirror OS comes with a settings application (so that the user can setup the mirror language for example) and the main store application (to download more apps on the mirror).

We created two more applications to demonstrate the store functionnality:

  • A weather application that shows outdoor temperature and humidity level, wind direction and speed, and sun and visibility
  • A snake game where the user can play using hand gestures

You can find the source code for this project on Github at Intel’Mirror.

Technologies used

The smart mirror OS runs on NodeJS and saves data to a local SQLite database. Applications are made of pure JavaScript and HTML5, and are compressed in ZIP archive file format.

The frontend is made of pure JavaScript and HTML5, and uses the JavaScript Hand Gesture library to detect hand gestures.

Communication between the frontend and backend is made using WebSocket API.

My contribution

I’ve mainly worked on designing the overall application architecture, and I’ve also made the backend of the smart mirror OS and applications.

Screenshots

Intel'Mirror screenshot 1

Intel'Mirror screenshot 2