explaingit

magicmirrororg/magicmirror

Analysis updated 2026-06-21

23,497JavaScriptAudience · generalComplexity · 3/5Setup · moderate

TLDR

MagicMirror² is open-source software that turns a monitor mounted behind a two-way mirror into a smart home display showing clocks, weather, calendar events, and news, running on a Raspberry Pi.

Mindmap

mindmap
  root((repo))
    What it does
      Smart mirror display
      Modular plugin system
      Home info hub
    Tech Stack
      JavaScript
      Electron app
      Raspberry Pi
    Built-in Modules
      Clock and weather
      Calendar events
      News feed
    Audience
      DIY hobbyists
      Smart home fans
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a wall-mounted smart display showing time, weather, and calendar events behind a two-way mirror.

USE CASE 2

Install community plugins to add custom modules like commute times, stock tickers, or compliment rotators.

USE CASE 3

Run a personal information dashboard on a Raspberry Pi connected to any HDMI monitor.

What is it built with?

JavaScriptNode.jsElectron

How does it compare?

magicmirrororg/magicmirrortailwindlabs/heroiconsjaredhanson/passport
Stars23,49723,50323,530
LanguageJavaScriptJavaScriptJavaScript
Setup difficultymoderateeasymoderate
Complexity3/51/52/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 1h+

Requires a Raspberry Pi or similar small computer, full build also needs a two-way mirror and a monitor.

In plain English

MagicMirror² is an open-source platform that turns a regular mirror into a smart display. The idea is physical: you mount a monitor or screen behind a two-way mirror (the kind that looks like a regular mirror from one side but lets light through from behind), run this software on a small computer like a Raspberry Pi behind it, and the screen shows useful information, clocks, weather, calendar events, news, overlaid on your reflection. The platform is built around a modular plugin system, meaning you install and configure modules to choose what appears on the mirror. There is a large community of third-party modules available beyond the built-in ones. The software runs as a standalone app using Electron, a tool that packages web-based apps into desktop applications, so you don't need to set up a separate web server or browser, it runs directly on the device. The interface itself is built with JavaScript. You would use this if you enjoy DIY home projects and want a functional, personalized information display in your home, typically in a hallway or bathroom. It is especially popular with Raspberry Pi hobbyists and smart home enthusiasts. Setup requires some technical comfort (connecting hardware, running the software, editing configuration files), but the community provides detailed documentation and a forum for help.

Copy-paste prompts

Prompt 1
I want to build a MagicMirror for my hallway using a Raspberry Pi 4. Walk me through the hardware setup, OS installation, and getting the MagicMirror software running for the first time.
Prompt 2
I have MagicMirror running. Show me how to install a third-party community module, like a Spotify now-playing widget, and add it to my config.js layout.
Prompt 3
My MagicMirror shows the default modules. Write me a config.js that displays time, local weather for London, a Google Calendar feed, and the latest BBC news headlines.
Prompt 4
How do I run MagicMirror in server mode so I can view it in a browser on a different device instead of the Pi's screen?

Frequently asked questions

What is magicmirror?

MagicMirror² is open-source software that turns a monitor mounted behind a two-way mirror into a smart home display showing clocks, weather, calendar events, and news, running on a Raspberry Pi.

What language is magicmirror written in?

Mainly JavaScript. The stack also includes JavaScript, Node.js, Electron.

How hard is magicmirror to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is magicmirror for?

Mainly general.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub magicmirrororg on gitmyhub

Verify against the repo before relying on details.