• Stars
    star
    105
  • Rank 328,196 (Top 7 %)
  • Language
    JavaScript
  • License
    Other
  • Created over 8 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

MirrorOS is an interface for smart mirrors and transparent screens with a J.A.R.V.I.S. touch to it

MirrorOS Logo

Github Releases Build Status Snyk Vulnerabilities Check

MirrorOS

MirrorOS is a lightweight user interface designed specifically for Magic Mirrors and transparent glass touch screens. The UI is built on NodeJS, React and Electron.

App Launcher

Video Demo

ezgif

Automatic installer

Coming Soon.

Manual Installation

Please be aware that MirrorOS is currently at the "proof of concept" stage. Almost all features are broken/in an early stage. If you still wan to try the software, please follow this tutorial How to Install on a Raspberry Pi

  • Note: requires a node version >= 7 and an npm version >= 4.
  • If you have installation or compilation issues with this project, please see our debugging guide

First, clone the repo via git:

$ git clone --depth=1 https://github.com/wassgha/MirrorOS.git MirrorOS

And then install dependencies with yarn.

$ cd MirrorOS
$ yarn

Note: If you can't use yarn for some reason, try npm install.

Run

To deploy the app and run it in production mode, simply use:

$ npm start

Features

Current features

  • Face Recognition and Smile detection for logging-in to the Mirror
  • Constant monitoring of user presence through face detection
  • Home UI almost done, with clock, date and weather
  • Draggable placeholder widgets
  • Almost ready app launcher
  • Leap Motion Support to substitute touch screens (using Leap Motion Touch Screen)

To implement

  • Support for apps, widgets and extentions
  • Providing an API for developers to extend the UI
  • Communication with nearby devices (getting notification from phone, connecting to bluetooth speakers)
  • Support for Air Play and other video streaming platforms to display content on the Magic Mirror/Display
  • Alexa integration
  • User accounts and face training
  • Live selfie filters app (filter overlay on mirror)
  • Uber/Lyft integration
  • News app
  • Live TV widget
  • Smart home widget (Nest & co integration)
  • OTA updates

Development

Start the app in the dev environment. This starts the renderer process in hot-module-replacement mode and starts a server that sends hot updates to the renderer process:

$ npm run dev

Editor Configuration

Atom

apm install editorconfig es6-javascript atom-ternjs javascript-snippets linter linter-eslint language-babel autocomplete-modules file-icons

VSCode

Sublime

Others

DevTools

  • OS X: Cmd Alt I or F12
  • Linux: Ctrl Shift I or F12
  • Windows: Ctrl Shift I or F12

See electron-debug for more information.

How to write your own MirrorOS widget

Will be updated soon with a complete guide. Note: Class names and IDs starting with os and os- are reserved for the internal use of the MirrorOS runtime.

Maintainers

License

Non-commercial, private and educational use only except by written authorization.

More Repositories

1

digital-signage

📺 Simple self-hosted digital signage software for turning screens into beautiful content displays
JavaScript
151
star
2

FaceRecognitionAPI

A Django OpenCV wrapper that acts as a RESTful API for face recognition
Python
37
star
3

react-native-fullwidth-image

A responsive Image element that takes the full width of its parent element while maintaining aspect ratio
JavaScript
35
star
4

LeapMotionTouchScreen

Java applet that converts every surface to a touch-enabled surface using Leap Motion and 3-point calibration
Processing
31
star
5

CalcTutor

Intelligent Tutor System for Calculus classes (includes Javascript virtual math keyboard and random function/derivative/integral generator)
JavaScript
13
star
6

WemosD1MiniDisplayShield

A simple code for displaying characters on the Wemos D1 Mini Display Shield
C++
8
star
7

WemosD1MiniRC

A Wifi-Controlled DIY Robot made using the Wemos D1 Mini chip (ESP8266)
Arduino
5
star
8

AudioEditorProcessing

Simple sound manipulation software in Processing
Java
4
star
9

airtable

Airtable Timeline Block
JavaScript
3
star
10

SurfaceDialProcessing

A Proof Of Concept for a novel user interaction method that uses phones' accelerometer data
Processing
3
star
11

Y86Simulator

Simple Y86 Processor Simulator with custom low-level RTN definitions of instructions
Java
2
star
12

zura-soundboard

A React Native soundboard app with all the common things our friend Zura says
JavaScript
2
star
13

YikYakAnalysisProcessing

Visualization of Yaks from Lafayette College using Processing (Java) based on word frequency, word clouds and times users are active on Yik Yak
Java
2
star
14

TurboGrade

Grading software for Computer Science labs
C++
1
star
15

SliceLocator

A delicious React Native app that locates events with free food at Lafayette College
JavaScript
1
star
16

wisedecider

WiseDecider is a tool for decision making that makes use of decision tables
JavaScript
1
star
17

magic-remote

🎛 A spatially-aware point-to-control universal remote prototype inspired by Sevenhugs
JavaScript
1
star
18

thirdeye

A blind person assistance device that uses a camera to describe the environment around the user
JavaScript
1
star
19

hadoop-pagerank

CS417 (Data Mining) Calculating PageRank and TopicRank in the Wikipedia Dataset
Java
1
star
20

metronome

Monitoring train car occupancy for the NYC subway
Python
1
star
21

react-native-rotating-view

A <View/> component that rotates every time the device changes orientation
JavaScript
1
star