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.

    63 Topics
    424 Posts
    KristjanESPERANTOK
    [2.33.0] - 2025-10-01 Thanks to: @Crazylegstoo, @dathbe, @m-idler, @plebcity, @khassel, @KristjanESPERANTO, @rejas and @sdetweil! ⚠️ This release needs nodejs version v22.18.0 or higher Added Add configuration option for User-Agent, used by calendar & news module (#3255) [linter] Add prettier plugin for nunjuck templates (#3887) [core] Add clear log for occupied port at startup (#3890) Changed [clock] Add CSS to prevent line breaking of sunset/sunrise time display (#3816) [core] Enhance system information logging format and include additional env and RAM details (#3839, #3843) [refactor] Add new file js/module_functions.js to move code used in several modules to one place (#3837) [refactor] Use global.root_path where possible and add tests for config:check (#3883, #3885, #3886, #3889) [tests] refactor: simplify jest config file (#3844) [tests] refactor: extract constants for weather electron tests (#3845) [tests] refactor: add setupDOMEnvironment helper function to eliminate repetitive JSDOM setup code (#3860) [tests] replace console with Log in calendar debug.js to avoid exception in eslint config (#3846) [tests] speed up e2e tests, cleanup and stabilize weather e2e tests, update snapshot url (#3847, #3848, #3861) [tests] refactor translation tests (#3866) Remove sinon dependency in favor of Jest native mocking Unify test helper functions across translation test suites Rename setupDOMEnvironment to createTranslationTestEnvironment for consistency Simplify DOM setup by removing unnecessary Promise/async patterns Avoid potential port conflicts by using port 3001 for translator unit tests Improve test reliability and maintainability [tests] add alert module tests for different welcome_message configurations (#3867) [lint-staged] use prettier --write --ignore-unknown in lint-staged to avoid errors on unsupported files (#3888) Updated [calendar] Update defaultSymbol name and also the link to the icon search site (#3879) [core] Update dependencies including electron to v38 as well as github actions (#3831, #3849, #3857, #3858, #3872, #3876, #3882, #3891, #3896) [weather] Update feels_like temperature calculation formula (#3869) [weather] Update null value handling for weather type (#3892) [layout] Update styles for weather and calendar (#3894) Fixed [calendar] Fixed broken unittest that only broke on the 1st of July and 1st of january (#3830) [clock] Fixed missing icons when no other modules with icons is loaded (#3834) [weather] Fixed handling of empty values in weathergov providers handling of precipitationAmount (#3859) [calendar] Fix regression handling of limit days (#3840) [calendar] Fixed regression of calendarfetcherutils.shouldEventBeExcluded (#3841) [core] Fixed socket.io timeout when server is slow to send notification, notification lost at client (#3380) [tests] refactor AnimateCSS tests after jsdom 27 upgrade (#3891) [weather] Use apparent_temperature data from openmeteo’s hourly weather for current feelsLikeTemp (#3868). [weather] Updated envcanada Provider to use new database/URL schema for accessing weather data (#3878).
  • Discuss the MagicMirror² core framework.

    486 Topics
    4k Posts
    plainbrokeP
    @ge You might try MMM-GmailFeed, it allows sound when mail arrives. Just set it to playSound: true, Not sure what that sound is, because I have no speakers on my MM.
  • Anything harware related can be found here.

    790 Topics
    7k Posts
    S
    @CaptainKen I might search on USB and see if any of those hit
  • Add exciting new features to your mirror.

    6k Topics
    57k Posts
    S
    @UncleRoger did you see the HACS integration https://github.com/Hyundai-Kia-Connect/kia_uvo And then his module instead of bluelinky
  • Make your mirror your own but modifying its appearance.

    430 Topics
    3k Posts
    C
    @Wilack or you try this module. MMM-GlobalPositioner I did it a while ago. It is okay if the modules are not much floating in their size.
  • Share your project story with pictures.

    568 Topics
    5k Posts
    H
    @jamesarm It was a regular off the shelf mirror in a frame. I just removed the actual mirror portion from the frame and replaced it with 4mm tinted glass.
  • You have a problem with your mirror? Ask for help.

    5k Topics
    35k Posts
    S
    @Richard238 said in Calendar failed to load - check the logs: about a minute ago If perhaps it could show the nature of the error? what does that mean? we requested the ics data from the calendar provider using the URL you provided in the config and the request failed, timeout… we don’t know why or anything more and we gave you all that in the messages we produced. And the route to the logs, because most of us have to look up where they are! ;-) you are LOOKING at the logs… so you must have found the route ---- as always — the logs IS the output of the MM start command, npm start node --run start npm runs server node --run server whatever you used now, you can do it manually in some terminal window OR you can code it into the system startup OR you can use a pgm that does that FOR you, aka pm2 WHERE that data is stored is up to that implementation as I do the install script, I use pm2, as it insulates me from the OS details… my script last lines is see the help echo please see the help for the pm2 command, pm2 --help echo pm2 status will show the running apps, and their runtime status SO… one could/should detect that the command is pm2 and so do pm2 --help and one core learning thing on linux ALL terminal commands , by agreed convention, provide a general help using the parameter --help so pm2 --help will tell you all the things it can do SOME commands ALSO provide a manual page (pm2 does not) which can be viewed with the man command man ls will show you the detailed help for the ls command Yes, there is a LOT to learn here…
  • A place to talk about whatever you want.

    1k Topics
    9k Posts
    S
    @DarrenO-0 in the output of npm start There will be a line Broadcasting xxx events for calendar yyyy Where yyyy is the full url configured in the calendar That line will have a timestamp at the beginning of the line That is the output of the calendar module fetcher and starts the delivery to the front end to display If you use pm2 that content is captured for you You could use grep to extract just those lines cd ~/.pm2/logs ls Find the right filename. Pm2_app name-out.log grep Broadcasting fffff Where fffff is the file name you selected Note the file is added to each time MagicMirror is restarted unless you clear it first pm2 flush To clear Before posting in a public place, make sure to mangle the url on each line so as not to expose your working cal url