Microsoft Magic Mirror mockup
Smart mirrors: And here's one we made earlier...Microsoft

It may be a while before you walk into a shop and pick up a smart mirror – but if you really can't wait, Microsoft has open-sourced its own build specifications so you can create one yourself. The company has posted instructions for its magic mirror project on GitHub, including a list of materials you'd need to turn a regular mirror into one with smarts.

A smart mirror borrows elements from the home screen of smartphones and tablets, essentially proving a basic user interface that is overlaid onto the surface of the mirror. This means you could view things like the time, weather and travel info while brushing your teeth in the morning.

There are a couple of ways of making mirrors smart, with Microsoft's approach being a fairly typical one. The process involves placing a basic LCD display showing white elements on a black background behind a one-way mirror – confusingly, also known as a two-way mirror. When this is switched on, you can see the display through the glass.

"The mirror is built to be useful to a person getting ready in the morning," said a Microsoft statement. "This person is likely on a time crunch, wants to be well-prepared for the day and is interested in updates, but possibly doesn't want to be barraged with info before they're fully awake.

"With that in mind, we placed more-pressing information [weather, time, and a space reserved for alerts] at the top of the mirror near eye level and pushed less-urgent information down at the bottom, where it can be ignored or consciously consumed. Every user will have a slightly different idea about what's most important, so this is a great project for exploring personalisation through tech."

Microsoft's Magic Mirror uses a Raspberry Pi as the brains, owing to its affordability, easy operation and wide software and hardware support. The Raspberry Pi is loaded with Windows IoT Core, a version of Windows 10 optimised for smaller devices, and runs on the Raspberry Pi 2 and 3. The display itself is a web app created in HTML, CSS, and JavaScript and hosted on Microsoft's Azure cloud computing platform.

Magic Mirror UI
Microsoft suggests placing more important info at eye level in smart mirrorsMicrosoft

Mirror, mirror

The mirror is also linked to Microsoft's Cognitive Services artificial intelligence (AI) platform. Specifically, it leverages the company's Face API, which gives the mirror facial recognition abilities. After setting up a profile and sending a picture of yourself to the Cognitive Services database, you'd be able to step in front of the mirror and get a personalised display showing the information based on your preferences.

The company is also looking at how to bring updates from third-party apps to magic mirror, meaning you'd eventually be able to view news feeds and social media updates.

Microsoft offers a couple of tips on how to make sure your own smart mirror is practical: "The UI should be simple and easy to visually digest, so we kept adornment light and typography clear. The screen needs to be readable through the mirrored surface, so we used a high contrast ratio of pure white on pure black.

"Lastly and most importantly, the user needs to see their reflection, so we kept the central area of the mirror clear when the user is logged in."

Up to the challenge? The full set of instructions can be found here.