<?xml version="1.0" encoding="utf-8" standalone="yes"?>
 <rss version="2.0"
    xmlns:atom="http://www.w3.org/2005/Atom"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>mirror on Chris McWain ᗧ··ᗣ·</title>
    <link>https://mcwain.net/tags/mirror/</link>
    <description>Recent content in mirror on Chris McWain ᗧ··ᗣ·</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Fri, 24 Jul 2026 23:21:05 -0700</lastBuildDate><atom:link href="https://mcwain.net/tags/mirror/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Magic Mirror</title>
      <link>https://mcwain.net/blog/mirror/</link>
      <pubDate>Fri, 24 Jul 2026 23:21:05 -0700</pubDate>
      
      <guid>https://mcwain.net/blog/mirror/</guid>
      <description>&lt;h1 id=&#34;magic-mirror&#34;&gt;Magic Mirror&lt;/h1&gt;
&lt;p&gt;The &lt;a href=&#34;https://magicmirror.builders/&#34;&gt;Magic Mirror project&lt;/a&gt; has always been interesting to me since it became insanely popular about a decade ago. Like the &amp;ldquo;&lt;a href=&#34;https://www.youtube.com/watch?v=IJ-hiw1CqyA&#34;&gt;live-edge river&lt;/a&gt;&amp;rdquo; table &lt;a href=&#34;https://trends.google.com/explore?q=live%20edge%20river%20table&amp;amp;date=all&amp;amp;geo=US&#34;&gt;craze of 2018&lt;/a&gt;, building a &amp;ldquo;Magic Mirror&amp;rdquo; was on everyone&amp;rsquo;s wishlist. You&amp;rsquo;d see them pop up in bathrooms and kitchens, each with a microphone and touchscreen, and of course weather and calendar widgets. I never understood the bathroom appeal though. People were building those things out of 55&amp;quot; screens which was waste of a screen and electricity and had potential for data overload. Anyhow, who stares at their mirror for that long in the morning while brushing their teeth? Why not just build a smaller one and keep it near you so can see what&amp;rsquo;s going on in the day. It felt like there was so much potential, but people were dork-maxxing it like putting RGB on everything is today.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve used the official Magic Mirror software since the Great Lockdowns of 2020. The &amp;ldquo;&lt;a href=&#34;https://mcwain.net/portfolio/dashboard/&#34;&gt;Magic Dashboard&lt;/a&gt;&amp;rdquo; displayed calendar events, weather, and eventually health stats with a custom built module. It&amp;rsquo;s been sitting next to my computer desk since and has been incredibly helpful knowing my day at a glance. The problems started piling up and like other things in my life, if something doesn&amp;rsquo;t work exactly how I want it to, it&amp;rsquo;s time to build my own.&lt;/p&gt;
&lt;p&gt;There were a few things this project needed to address:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The page needs to be independent of the device it sits on (like my kid&amp;rsquo;s &lt;a href=&#34;https://mcwain.net/blog/beacon/&#34;&gt;new dashboard&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Custom built so it&amp;rsquo;s easy to modify / update&lt;/li&gt;
&lt;li&gt;Quick to deploy and restart on failures&lt;/li&gt;
&lt;li&gt;Integrates with existing app APIs&lt;/li&gt;
&lt;li&gt;No need to build a custom module for each section&lt;/li&gt;
&lt;li&gt;No annoyingly tedious config.json to get &lt;strong&gt;exactly&lt;/strong&gt; right or the entire package breaks &amp;gt;:(&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As you can see, the list of Magic Mirror annoyances continued to grow. Anyhow, this is my first pass at overhauling the dashboard into something much more useful and easy to manage. Since it was built from my wife&amp;rsquo;s old laptop screen, there is integrated pixel-shifting and a night time mode that darkens everything but essential info. That&amp;rsquo;ll help keep the screen from burning-in. There are also multi-colored bubbles that float up from the bottom of the screen, but that&amp;rsquo;s difficult to see in the photo. The backgrounds are randomly pulled from &lt;a href=&#34;https://unsplash.com/collections&#34;&gt;Unsplash collections&lt;/a&gt;. I chose retro gaming, so tomorrow it&amp;rsquo;ll have rad pictures of Game Boys and NES zappers.&lt;/p&gt;
&lt;p&gt;&lt;figure&gt;
  &lt;a href=&#34;https://mcwain.net/img/blog/mirror/mirror.jpg&#34;
     data-toggle=&#34;lightbox&#34;
     data-title=&#34;mirror&#34;&gt;
    &lt;img src=&#34;https://mcwain.net/img/blog/mirror/mirror.jpg&#34;
         alt=&#34;mirror&#34;
         class=&#34;img-responsive&#34;
         loading=&#34;lazy&#34;&gt;
  &lt;/a&gt;
  
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;The upgrade is worth it already, even at a glance. The gray gradient under the metrics makes the numbers and text far easier to read, where the old dashboard&amp;rsquo;s wallpaper would muddle the colors and make reading a pain in the ass. Swapping wallpaper collections and calendars is easier too, and since everything&amp;rsquo;s sourced from my server now instead of the Raspberry Pi itself, managing the thing barely takes any effort.&lt;/p&gt;
&lt;p&gt;The whole build took one evening, from my wife making homemade pizza for dinner to the kids heading to bed. The first build finished just in time to tell my son about it. He hasn&amp;rsquo;t seen it yet, but he&amp;rsquo;s already excited.&lt;/p&gt;
&lt;p&gt;Next up I&amp;rsquo;ve got another web app that pulls in notifications through a webhook, called Ping (haven&amp;rsquo;t written a proper post about that one yet). It needs an API so it can show the most recent notifications somewhere on this new dashboard. Only problem is there&amp;rsquo;s not enough room on this screen. I&amp;rsquo;ll need to move some stuff around.&lt;/p&gt;
&lt;p&gt;It was a quick project, but a desperately needed one. If you want the code, feel free to ask.&lt;/p&gt;
</description>
      
    </item>
    
  </channel>
</rss>
