A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.
  • Automatic checking of all MagicMirror² modules

    Pinned
    83
    2 Votes
    83 Posts
    58k Views
    BerkSmash1984B
    @KristjanESPERANTO Awesome. Thanks for the response!
  • Head first developing MM module for extreme beginners

    Pinned
    27
    5
    7 Votes
    27 Posts
    19k Views
    R
    Anyone have an idea on how to display an image instead of a line. I downloaded a jpeg image of a dog and I would like to display that instead of
  • LICENSE: on modules.magicmirror.builders shows @noassertion instead of MIT

    12
    0 Votes
    12 Posts
    225 Views
    karsten13K
    @sdetweil said in LICENSE: on modules.magicmirror.builders shows @noassertion instead of MIT: click the hints for dev view bottom left hint link works … looks like problems on your side …
  • Module Development in TypeScript

    6
    2 Votes
    6 Posts
    1k Views
    F
    Hi @Jalibu, thanks for the typings. To be honest, it’s not the best possible integration. The MagicMirror repository includes a module-types.ts file, containing the most important types, which I extended a little to fit my needs. A deeper integration, like being able to get correct typings/autocompletion for the this object in functions, is not available. If I find myself using it more in the future, I may look into improving this. I want to share an little extension or may a solution for the problem quoted: import type { Config } from "../types/Config"; import type { State } from "../types/State"; interface FrontendModuleProperties extends Partial<Module.ModuleProperties<Config>> { state?: State; } Module.register<Config>("MMM-XX", { defaults: { x: 29, y: "abc", }, getStyles() { return ["z.css"]; }, <...> getTemplateData() { return { config: this.config, value: this.state?.value, }; }, <...> socketNotificationReceived(notificationIdentifier: string, payload: State) { if (notificationIdentifier === `ABC-${this.identifier}`) { const lastValue = this.state?.value; // <-- Here lastValue got correct type automatically <...> this.state = payload; } }, } as FrontendModuleProperties);
  • MMM-Carousel Pagination Icons

    48
    0 Votes
    48 Posts
    4k Views
    C
    @mumblebaj , @karsten13 and @sdetweil , thank you really for your help with this matter. I will test tomorrow and hope all this story will help other user in the future to profit from all your great job!
  • start() vs receiving waiting for MODULE_DOM_CREATED notification?

    3
    0 Votes
    3 Posts
    78 Views
    D
    @sdetweil I’d rather have late and working consistently than early and missed because of lag. I suspect most people boot their mirror at most once a day, so waiting an extra 30 seconds for the module to show content doesn’t seem like that big of a deal. But I’ll try DOM_OBJECTS_CREATED.
  • Need help for a module who give advice because of the weather

    4
    0 Votes
    4 Posts
    123 Views
    mumblebajM
    @Xx_Codeur_xX You could have a look at some of the modules that already does this. They get the weather from the default weather module, no need to redo this as it is already available. See either of the below. https://github.com/fruestueck/MMM-WeatherDependentClothes or https://github.com/Lavve/MMM-WeatherOutfit/tree/main
  • How to Use NY Times Subscription with Default Newsfeed Module

    9
    0 Votes
    9 Posts
    140 Views
    J
    @karsten13 – Yes, that’s what I figured. The problem from the provider’s perspective would be how to both give access to legitimate subscribers while limiting access to others. The only solution that springs to mind would be to authenticate the user when they query the server, but for something like this where all the users’ computers might each be coming for content several times each day - it begins to be a lot of computing overhead.
  • SampleCode for Module to read a specific Information from a webpage

    19
    0 Votes
    19 Posts
    1k Views
    S
    @newbi ok.
  • Need Help with Receiving Notifications

    4
    0 Votes
    4 Posts
    229 Views
    S
    @raspberrypi9 did you get this working?
  • Trouble with Sending Notifcation on Module Start

    5
    0 Votes
    5 Posts
    202 Views
    S
    @raspberrypi9 my pleasure, And actually DOM_OBJECTS_CREATED means YOUR module’s content has been placed in the DOM the first time And DOM_OBJECTS_UPDATED is each time after that Because updateDom() is asynchronous now If you ever tried to document.getElementByID after getDom(), but it returned null. Then you needed to wait for one of those notifications
  • How to communicate with magic mirror from a second raspberry pi?

    5
    0 Votes
    5 Posts
    184 Views
    S
    @raspberrypi9 i deleted the duplicate topic
  • Attribution Tag for Default Compliments Model

    8
    0 Votes
    8 Posts
    319 Views
    S
    @raspberrypi9 did you figure this out?
  • Help Implementing Custom Feature w/Calendar

    5
    0 Votes
    5 Posts
    201 Views
    S
    @sdetweil did you make any progress?
  • Need help MMM-touch MMM-pages MMM-page indicator

    27
    0 Votes
    27 Posts
    4k Views
    T
    @68jeeper yes! Sorry for the delayed response, I didn’t receive any notifications that you tagged me in this post. My solution was to use (https://github.com/JanLoebel/mmm-touchgestures). Hammer.js seems to be the difference and why this one works. The documentation was challenging for me ti follow but I was able to get it working through trial and error. My config look like this for MMM-touchgestures { module: 'mmm-touchgestures', config: { gestures: { "swipe": { enabled: true, threshold: 50 } }, actions: { "swiperight" : function() { return "PAGE_INCREMENT"; }, "swipeleft" : function() { return "PAGE_DECREMENT"; }, "swipeup" : function() { console.log("Triggered swipeup"); }, "swipedown" : function() { console.log("Triggered swipedown"); }, }, } },
  • Syntax Style for node_helper.js

    6
    0 Votes
    6 Posts
    256 Views
    KristjanESPERANTOK
    for MagicMirror purposes, is there a preferred style to be used for modules? @kayakbabe I agree with Sam, but here’s a more detailed answer anyway: This depends on where you are. In some modules there are no rules for this - there and in your own modules it is, as Sam says, up to you. However, to avoid poor code style, such as spaghetti code and inconsistently formatted code, which not only make maintenance and further development more difficult, but also affect team collaboration, many projects use static code analysis tools such as prettier and ESLint for checking code quality. In the MagicMirror core (and with this in the default modules), we use the ESLint object-shorthand rule (see https://archive.eslint.org/docs/rules/object-shorthand) to ensure that only the shorthand version is used.
  • How to make compliments word wrap?

    3
    0 Votes
    3 Posts
    151 Views
    S
    @raspberrypi9 google is your friend [image: 1740971825398-img_0817.png]
  • 0 Votes
    6 Posts
    129 Views
    S
    @kayakbabe and on the architecture/design topic if you are doing the signage solution, then one would want one data fetch and broadcast to each client vs each client getting the data on their own some provider apikeys count data access requests (openweather) . so while you dont NEED a node_helper, sometimes you want it. but some of the existing modules dont really support that thought
  • MMM-cryptocurrency mods - help needed - noob status

    2
    1
    0 Votes
    2 Posts
    169 Views
    S
    @FuzzBeard that will be quite a challenge. the easiest, maybe is only process part of the returned list each time thru getDom() so you would have to start another interval timer on a cycle of data_interval(numcryptos/display size) then change the loop control in getDom wrapper.appendChild(tableHeader); for (i = 0; i < data.length; i++) { // - this line to process the appropriate part of the data list
  • Send Notifications from Linux/RPi Command Line

    8
    0 Votes
    8 Posts
    316 Views
    S
    @raspberrypi9 and curl can send a whole file of json, not just a short blob
OSZAR »