MagicMirror² + DejaView

Show your Apple Photos on MagicMirror².

MagicMirror² builds a gorgeous smart mirror — but its photo modules usually pull from a public URL or a cloud account. DejaView is the private way: it streams your own Apple Photos albums straight from your Mac over your local network, and any photo module can display them.

A wall display showing personal photos served privately by DejaView, the kind of source a MagicMirror² photo module can show

Why DejaView

Your own memories on the mirror — not a stranger's stock photos.

Out of the box, MagicMirror² photo modules tend to point at a public image API or a cloud photo service. Showing your own family photos usually means uploading them somewhere or exposing a public share link anyone can open.

DejaView takes the opposite approach. It runs quietly in your Mac's menu bar and serves your chosen albums directly to your mirror over your local network — read-only, no uploads, no account, no public links. Each stream is just a URL, so any module that loads an image from a URL can show your photos.

Step by step

From Apple Photos to your mirror in four steps.

  1. 1

    Install DejaView and pick an album

    Download DejaView free from the Mac App Store. Grant read-only access to Apple Photos, then choose one or more albums — including smart and shared albums — or point it at any folder on your Mac.

  2. 2

    Copy the stream URL

    DejaView runs a small server in your menu bar and gives each stream a local-network endpoint URL that returns a fresh photo on every request. Copy it with one click. Nothing is uploaded — the photos are served straight from your Mac.

  3. 3

    Add a photo module to your MagicMirror config

    Open config/config.js on your MagicMirror² and add a photo module — MMM-RandomPhoto is the cleanest fit — to the modules array, with its url option set to your DejaView endpoint. The module fetches a new image from that URL on each interval.

    Add this to the modules array in config/config.js (swap in your own DejaView endpoint URL):

    {
      module: "MMM-RandomPhoto",
      position: "fullscreen_below",
      config: {
        // Your DejaView endpoint URL (default https://<ip>:8443/<slug>.jpg).
        // It uses a self-signed cert; if the module won't load it, switch
        // DejaView to HTTP (port 8080) in Settings and use http://...:8080/<slug>.jpg
        url: "https://your-mac.local:8443/your-album.jpg",
        updateInterval: 60,   // seconds between photos
        animationSpeed: 1000, // crossfade, in ms
        opacity: 1.0,
      },
    },
  4. 4

    Restart MagicMirror — your photos are on the mirror

    Restart MagicMirror² to load the new module. Your own Apple Photos now rotate on the mirror. Add new photos in Apple Photos and they show up automatically — no re-uploading, ever.

DejaView's menu bar panel showing the server running with active Apple Photos and folder streams and their local-network URLs
DejaView's album stream configuration showing the endpoint URL to paste into the MagicMirror² photo module

FAQ

MagicMirror² + DejaView, answered.

Which MagicMirror² module should I use?

MMM-RandomPhoto is the simplest fit: it has a single 'url' config option that fetches an image from any URL on a timer, which maps directly to a DejaView stream endpoint. Any module that loads an image from a URL will work the same way — DejaView just exposes a standard image URL.

Do the photos rotate and update on their own?

Yes. The module re-requests the DejaView URL on every updateInterval, and each request returns a different photo from your album with DejaView's smart rotation. Add new photos in Apple Photos and they flow to the mirror automatically — no editing config or re-uploading.

Is anything uploaded to the cloud?

No. DejaView serves your photos directly from your Mac over your local network. They are never uploaded to DejaView, MagicMirror², or any cloud service. Your Mac just needs to be on and on the same network as the mirror.

Can I stream more than one album?

Yes. Combine several albums into a single stream with proportional weighting, mix in folders, or run separate streams on different endpoints for different modules. You can also use the built-in 'On This Day' stream to resurface photos from years past.

Do I need to keep my Mac running?

Yes — DejaView serves the photos live, so your Mac needs to be on and awake while the mirror is showing them. There are no servers or subscriptions in between; it's just your Mac and your MagicMirror² on the same local network.

Is DejaView affiliated with MagicMirror²?

No. MagicMirror² is an independent open-source (MIT) project created by Michael Teeuw. DejaView is an independent macOS app that complements it by giving any photo module a private, local source for your own Apple Photos. Apple and Apple Photos are trademarks of Apple Inc.

Give your MagicMirror² a private photo source.

Download DejaView free from the Mac App Store and show your own Apple Photos on MagicMirror² in under a minute — no cloud, no account.