Skip to main content

Core application for MirrorDash

Project description

🪞 MirrorDash

Python Version License: PolyForm_NC_1.0.0 Platform PyPI version Downloads

The ambient, zero-friction smart display designed to bring your home to life—silently, elegantly, and beautifully.

Imagine a morning routine without screens, clutter, or notification fatigue. You walk into your bathroom or hallway, look in the mirror, and see the time, today's weather forecast, and your upcoming calendar appointments floating gently on the glass. No buttons to press, no voice assistants to argue with, and no touchscreen smudges.

That is MirrorDash—a professional-grade, ambient smart display that turns any two-way mirror into a quiet, glanceable dashboard.


MirrorDash Ambient Smart Display Preview


✨ Why MirrorDash is Different

While smart mirrors and screens have existed for years, they are notoriously difficult to set up, maintain, and develop for. MirrorDash is built from the ground up to solve these pain points, offering a premium experience that sets it apart from traditional platforms:

  • 🛡️ True "Set and Forget" Reliability: Standard DIY smart displays frequently corrupt their SD cards due to constant writing of logs and cache files. MirrorDash is built to run on write-restricted, read-only operating systems (OverlayFS). Dynamic configurations are isolated to a protected, persistent partition, ensuring your display runs continuously for years without filesystem degradation or SD card wear.
  • 📱 No-Code Phone Configuration: Most open-source smart mirror platforms require you to edit complicated configuration files using terminal commands or SSH. MirrorDash provides an elegant, local Admin Dashboard that lets you change settings, toggle widgets, enter API keys, and manage backups directly from your phone.
  • ⚡ Ultra-Lightweight, Zero-Build Frontend: Unlike modern web setups that rely on heavy frameworks (like React or Vue) and bloat the CPU, MirrorDash uses pure, native HTML, CSS, and JavaScript connected via direct WebSockets. By eliminating heavy build steps and runtimes, the interface updates instantly with near-zero CPU and memory overhead on the Raspberry Pi.
  • 🧩 Decoupled Widget Ecosystem: Instead of a massive, messy codebase where one broken module crashes the entire system, MirrorDash treats every widget as a fully isolated, standard Python package. Developers can build, test, and distribute widgets independently using the MirrorDash SDK without touching the core system.

MirrorDash Ambient Smart Display Preview


⚙️ Technical Deep-Dive (For Developers)

Under the hood, MirrorDash is a production-grade IoT platform optimized for the Raspberry Pi running in full-screen kiosk mode.

  • 🐍 Backend: FastAPI (Python 3.14) driving a high-performance, asynchronous event loop. Communication with the frontend is handled via real-time WebSockets with local frame caching for instant layout rendering on client connect.
  • 🎨 Frontend: Zero-framework vanilla HTML5, CSS Grid/Flexbox, and native JavaScript. No React, Vue, or heavy build steps—meaning near-zero CPU and memory footprint on the Pi.
  • 🔒 OS Hardening: Configured to run on a read-only OverlayFS root filesystem (Debian 13 Trixie). Dynamic configs and data are written exclusively to a persistent user partition, preventing SD card corruption from frequent write cycles.
  • 🏗️ Decoupled Architecture: Widgets are fully isolated, pip-installable Python packages discovered at runtime via metadata entry points.

🚀 Build for MirrorDash (Pushing Community Modules)

Do you have a smart device, a custom API, or a unique idea you want to show on your mirror? MirrorDash is built for developers. We invite you to build and share custom widgets with the community!

Our standalone MirrorDash SDK makes bootstrapping a new widget incredibly easy:

  1. 🛠️ Scaffold a new module in seconds:
    uvx mirrordash-cli create-module mirrordash-my-widget --description "My custom display widget"
    
  2. 💻 Develop with standard tools: Write simple Python logic to fetch data, and structure your layout with a clean Jinja2 HTML template and vanilla CSS.
  3. 📦 Share it: Packages are standard Python distributions. You can publish your module to PyPI, host it on GitHub, or install it locally on your mirror.

Whether you want to show transit schedules, air quality indexes, plant soil moisture, or custom stock charts, the community is always looking for new modules. Check out mirrordash-sdk to get started!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mirrordash-0.2.4.tar.gz (7.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mirrordash-0.2.4-py3-none-any.whl (802.2 kB view details)

Uploaded Python 3

File details

Details for the file mirrordash-0.2.4.tar.gz.

File metadata

  • Download URL: mirrordash-0.2.4.tar.gz
  • Upload date:
  • Size: 7.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mirrordash-0.2.4.tar.gz
Algorithm Hash digest
SHA256 1cce3ac7b9bd70f5885a6877eb39218563e9df032bfee3ff7091b96f2d932917
MD5 7ee8f6fc9d914578011ae8cfaa4d370d
BLAKE2b-256 8cea7604174338e031350c071e6a3e09db4c53e3d078d4074cfcce1c258476cc

See more details on using hashes here.

Provenance

The following attestation bundles were made for mirrordash-0.2.4.tar.gz:

Publisher: publish.yml on Menturan/MirrorDash

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mirrordash-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: mirrordash-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 802.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for mirrordash-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 06e744af9a11c4b818e9a85eef92f19b5bfb5d7b72f64d83ee6b2d6fa56ccdaf
MD5 492b0e788f3ddb14399d49b7161e4c92
BLAKE2b-256 bd1f65a779db0eca225847acbecd515da209913ff248b99598e941063afd6797

See more details on using hashes here.

Provenance

The following attestation bundles were made for mirrordash-0.2.4-py3-none-any.whl:

Publisher: publish.yml on Menturan/MirrorDash

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page