A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

Categories

  • Announcements regarding the MagicMirror software and forum.

    65 Topics
    426 Posts
    karsten13K
    Release Notes Thanks to: @angeldeejay, @in-voker, @JHWelch, @khassel, @KristjanESPERANTO, @rejas, @sdetweil ⚠️ This release needs nodejs version >=22.21.1 <23 || >=24 (no change to previous release) Compare to previous Release v2.34.0 ⚠️ We introduced some internal changes with this release, please read this forum post before upgrading! [core] Prepare Release 2.35.0 (#4071) docs: add security policy and vulnerability reporting guidelines (#4069) refactor: simplify internal require() calls (#4056) allow environment variables in cors urls (#4033) fix cors proxy getting binary data (e.g. png, webp) (#4030) fix: correct secret redaction and optimize loadConfig (#4031) change loading config.js, allow variables in config.js and try to protect sensitive data (#4029) remove kioskmode (#4027) Add dark theme logo (#4026) move custom.css from css to config (#4020) move default modules from /modules/default to /defaultmodules (#4019) update node versions in workflows (#4018) [core] refactor: extract and centralize HTTP fetcher (#4016) fix systeminformation not displaying electron version (#4012) Update node-ical and support it’s rrule-temporal changes (#4010) Change default start scripts from X11 to Wayland (#4011) refactor: unify favicon for index.html and Electron (#4006) [core] run systeminformation in subprocess so the info is always displayed (#4002) set next release dev number (#4000) [dependencies] update dependencies (#4068) update dependencies incl. electron to v41 (#4058) chore: upgrade ESLint to v10 and fix newly surfaced issues (#4057) chore: update ESLint and plugins, simplify config, apply new rules (#4052) chore: update dependencies + add exports, files, and sideEffects fields to package.json (#4040) [core] refactor: enable ESLint rule require-await and handle detected issues (#4038) Update node-ical and other deps (#4025) chore: update dependencies (#4021) chore(eslint): migrate from eslint-plugin-vitest to @vitest/eslint-plugin and run rules only on test files (#4014) Update deps as requested by dependabot (#4008) update Collaboration.md and dependencies (#4001) [logging] refactor: further logger clean-up (#4050) Fix Node.js v25 logging prefix and modernize logger (#4049) [modules/calendar] fix(calendar): make showEnd behavior more consistent across time formats (#4059) test(calendar): fix hardcoded date in event shape test (#4055) [calendar] refactor: delegate event expansion to node-ical’s expandRecurringEvent (#4047) calendar.js: remove useless hasCalendarURL function (#4028) fix(calendar): update to node-ical 0.23.1 and fix full-day recurrence lookup (#4013) fix(calendar): correct day-of-week for full-day recurring events across all timezones (#4004) [modules/newsfeed] fix(newsfeed): fix full article view and add framing check (#4039) [newsfeed] refactor: migrate to centralized HTTPFetcher (#4023) [modules/weather] fix(weather): fix openmeteo forecast stuck in the past (#4064) fix(weather): fix weathergov forecast day labels off by one (#4065) weather: fixes for templates (#4054) weather: add possibility to override njk’s and css (#4051) Use getDateString in openmeteo (#4046) [weather] refactor: migrate to server-side providers with centralized HTTPFetcher (#4032) [weather] feat: add Weather API Provider (#4036) [testing] chore: remove obsolete Jest config and unit test global setup (#4044) replace template_spec test with config_variables test (#4034) refactor(clientonly): modernize code structure and add comprehensive tests (#4022) Switch to undici Agent for HTTPS requests (#4015) chore: migrate CI workflows to ubuntu-slim for faster startup times (#4007) see https://github.com/MagicMirrorOrg/MagicMirror/releases/tag/v2.35.0
  • Discuss the MagicMirror² core framework.

    493 Topics
    4k Posts
    S
    @Bungle68 there is no auto update. You can go the manual install/update or use the scripted install/update. For the base. See the doc, alternative install My script are first there There are various mechanisms for modules
  • Anything harware related can be found here.

    798 Topics
    7k Posts
    S
    @magicbeing someone posted on Reddit about hacking a luluemon exercise mirror https://www.reddit.com/r/MagicMirror/s/PY78sJWwrT
  • Add exciting new features to your mirror.

    6k Topics
    58k Posts
    mumblebajM
    @nowayto I have made changes to the module to accommodate the API key, however, when I tested it, it did not work for me. The Growatt NPM module states the following: You can get the key by having an email sent to you on the Grwatt website for a third party to display the data. The key is the combination of numbers and letters in the link. It has 96 characters. The API key I am seeing is much shorter than the 96 character key mentioned above and as a result I was getting a 500 error when I was testing it. This is obviously the wrong key. [image: 1776362305283-b6202969-721b-43cf-8278-736251ba6f56-image.jpeg] As such, I am reluctant to push changes I am unable to test successfully.
  • Make your mirror your own but modifying its appearance.

    432 Topics
    3k Posts
    S
    @megagprime try this module position:"bottom_left", no custom.css setting [image: 1775784183168-screenshot-at-2026-04-09-20-22-39-resized.png] custom.css .MMM-CalendarExt3 .module-content { width:175%; } adjust % as you need [image: 1775784059927-screenshot-at-2026-04-09-20-18-22-resized.png]
  • Share your project story with pictures.

    577 Topics
    5k Posts
    M
    @pocketknife Sure can: I’m travelling next week but will share it when I get back
  • You have a problem with your mirror? Ask for help.

    5k Topics
    36k Posts
    J
    @sdetweil --Hi Sam That was a while ago and my memory is foggy, but the issue was mapping a share on my NAS to the Raspberry Pi on which the MM is running… As best I recall, I tried following directions to map the drive, but it didn’t work. I seem to recall being left with the sense that the process [a] had changed over time due to changes in distributions, and/or [b] that there was something left out of the directions that were likely too obvious to mention for someone who already knew, but was non-obvious to someone out of the know. At that point I gave up. Fast forward to today - I’m happy to invest the time to learn and get it done if you’re willing to help!! I appreciate it. I sent you an email regarding how to best proceed.
  • A place to talk about whatever you want.

    1k Topics
    10k Posts
    karsten13K
    @OliWer said: Is this something that could be build into the default module? we introduced Themes for this use case with the lastest mm release