Read the statement by Michael Teeuw here.
MMM-CalendarExt - Startup problem
-
Im having problem starting my config.js since i added the module MMM-CalendarExt to my Raspberry Pi 3 MM.
(I have installed everything recently so all packages are the latest, it runs fine without MMM-CalendarExt part in the config.)
These are the errors i get.
What can i do to fix this?
[2024-11-24 11:18:27.405] [LOG] Loading module helpers …
[2024-11-24 11:18:28.801] [ERROR] (node:12995) UnhandledPromiseRejectionWarning: Error: Cannot find module ‘valid-url’
Require stack:- /home/mt/MagicMirror/modules/MMM-CalendarExt/node_helper.js
- /home/mt/MagicMirror/js/app.js
- /home/mt/MagicMirror/js/electron.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1232:15)
at s._resolveFilename (node:electron/js2c/browser_init:2:121498)
at Module._resolveFilename (/home/mt/MagicMirror/node_modules/module-alias/index.js:49:29)
at Module._load (node:internal/modules/cjs/loader:1058:27)
at c._load (node:electron/js2c/node_init:2:17025)
at Module.require (node:internal/modules/cjs/loader:1318:19)
at require (node:internal/modules/helpers:179:18)
at Object. (/home/mt/MagicMirror/modules/MMM-CalendarExt/node_helper.js:3:18)
at Module._compile (node:internal/modules/cjs/loader:1484:14)
at Module._extensions…js (node:internal/modules/cjs/loader:1564:10)
at Module.load (node:internal/modules/cjs/loader:1295:32)
at Module._load (node:internal/modules/cjs/loader:1111:12)
at c._load (node:electron/js2c/node_init:2:17025)
at Module.require (node:internal/modules/cjs/loader:1318:19)
at require (node:internal/modules/helpers:179:18)
at loadModule (/home/mt/MagicMirror/js/app.js:200:19)
(Useelectron --trace-warnings ...to show where the warning was created)
[2024-11-24 11:18:28.808] [ERROR] (node:12995) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag--unhandled-rejections=strict(see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
-
@sdetweil I got it working reading some other threads :)
Ran these inside the module-folder:
npm install request
npm install valid-url
npm init -y
There seems to be some problem though:
# npm audit report
request *
Severity: moderate
Server-Side Request Forgery in Request - https://github.com/advisories/GHSA-p8p7-x288-28g6
Depends on vulnerable versions of tough-cookie
No fix available
node_modules/requesttough-cookie <4.1.3
Severity: moderate
tough-cookie Prototype Pollution vulnerability - https://github.com/advisories/GHSA-72xf-g2v4-qvf3
No fix available
node_modules/tough-cookie2 moderate severity vulnerabilities
-
-
@sdetweil I got it working reading some other threads :)
Ran these inside the module-folder:
npm install request
npm install valid-url
npm init -y
There seems to be some problem though:
# npm audit report
request *
Severity: moderate
Server-Side Request Forgery in Request - https://github.com/advisories/GHSA-p8p7-x288-28g6
Depends on vulnerable versions of tough-cookie
No fix available
node_modules/requesttough-cookie <4.1.3
Severity: moderate
tough-cookie Prototype Pollution vulnerability - https://github.com/advisories/GHSA-72xf-g2v4-qvf3
No fix available
node_modules/tough-cookie2 moderate severity vulnerabilities
-
@Bimtronic ignore the audit reports, nothing you can do about them. part of the reason request is deprecated.
-
@Bimtronic MMM-CalendarExt3 is the latest and gets the data from the default calendar, so it doesn’t have this problem
-
S sdetweil has marked this topic as solved on
-
Im struggling to get anything to show in my setup for daily and current bars.

I have three local ics-calendars in my MM-Folder that ive adressed in my config, only calendar for “upcoming” bar shows up.
Config >
modules: [ { module: 'MMM-CalendarExt', position: "top_left", //anywhere. It is not related to real position of view config: { // Read below system:{ show: ['daily', 'upcoming', 'current'], locale: 'sv-SV', //when omitted, default value would be your system default locale by moment.js showEmptyView: 1, fullDayEventLocalize: 1, redrawInterval: 30*60*1000, //minimum 60000 useProfileConfig: 0, startProfile: '' }, defaultView: { position: 'bottom_bar', positionOrder: -1, overflowRolling: 0, overflowHeight: 0, overflowDuration: 2, onlyStartingTime: 0, timeFormat: 'HH:mm', dateFormat: "MMM Do", fullDayEventDateFormat: "MMM Do", ellipsis: 0, limit:1, oneLineEvent:0, replaceTitle:[], classPattern:[], classPatternWhere:["title"], symbolPattern:[], symbolPatternWhere:["title"] }, views: { weeks: { showWeeks: 1, weeksTitle: 'Veckor', weeksFormat: 'wo', weekdayFormat: 'dd', titleFormat : 'MMM D', overTitleFormat : 'MMM D', counts: 2, }, daily: { direction: 'row', counts: 5, titleFormat: "D", overTitleFormat: "MMM D", subtitleFormat: "ddd", }, weekly: { direction: 'row', counts: 4, titleFormat: "wo", overTitleFormat: "gggg wo", subtitleFormat: "MMM Do", }, current: { title: 'Aktuell', useRelative: 1 }, upcoming: { title: 'Kommande', useRelative: 1 }, }, defaultCalendar: { profiles: [], views: ['daily'], symbol: "", styleName: "", replaceTitle:[], classPattern: [], classPatternWhere: ["title"], symbolPattern: [], symbolPatternWhere: ["title"], maxEntries:50, maxDays:180, interval: 1800000, }, calendars: [ { name: "Namnsdagar", url: "webcal://localhost:8080/modules/ics/namedays.ics", profile: [], views: ['daily', 'current', 'upcoming'], styleName: "style1", symbol: 'us@fi', maxEntries: 50, maxDays:365, interval: 24*60*60*1000, }, { name: "Helgdagar", url: "webcal://localhost:8080/modules/ics/se_holidays.ics", profile: [], views: ['daily', 'current', 'upcoming'], styleName: "style1", symbol: 'se@fi', maxEntries: 50, maxDays:365, interval: 24*60*60*1000, }, { name: "Ansvarsvecka", url: "webcal://localhost:8080/modules/ics/Ansvarsvecka.ics", profile: [], views: ['daily', 'current', 'upcoming'], styleName: "style1", symbol: 'se@fi', maxEntries: 50, maxDays:365, interval: 24*60*60*1000, }, ], } }, { module: "calendar", header: "Helgdagar", position: "top_left", config: { calendars: [ { fetchInterval: 7 * 24 * 60 * 60 * 1000, symbol: "calendar-check", url: "webcal://localhost:8080/modules/ics/se_holidays.ics" } ] } }, -
@Bimtronic Try MMM-CalendarExt3 instead of MMM-CalendarExt. MMM-CalendarExt is no longer maintained.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login