Read the statement by Michael Teeuw here.
Automatic checking of all MagicMirror² modules
-
@sdetweil said in Automatic checking of all MagicMirror² modules:
@KristjanESPERANTO and, this impacts my scripts as i use package.json as the indicator for doing an npm install in the module folder.
There are some modules that only have devDependencies, so your script already makes unnecessary
npm install
calls. Can you adjust your trigger and check whether dependencies are set in the package.json? -
Great work @KristjanESPERANTO. Really, really like this. Is there a way to also publish the github stars and # of forks? I also would love if there is a way to “like” a module.
-
I suggest you and the community expand
package.json
to regularise the details of the module. (recommended but optional)
For example;{ "name": "mmm-something", "version": "1.0.0", ... "mm" : { "communityId" : "johndoe", "community" : "MagicMirror forum", "screenshot" : "https://somewhere.com/screenshot.png", "install" : "https://github.com/johndoe/mmm-something/README.md#installation", "update" : "...", "email" : "johndoe@somewhere", "required: { "mm" : "2.25", "node" : "18.0" }, "notice" : [ "This will not work in Windows.", "Pre-dependency required. Please readme." ] } }
The fields are my imagination. Maybe the community can reach an agreement on rules.
-
@KristjanESPERANTO My MMM-SweepClock doesn’t have a package.json either as all work done in the MMM-SweepClock.js file. I can add one for completeness and conformity. I also notice I did not have an image. I usually name my images image-1.png etc. so the main image is generally the first one.
-
@KristjanESPERANTO oh, and one more thing… my MMM-SleepWake module does not have any UI… so there is no photo…
-
@MZ-BER said in Automatic checking of all MagicMirror² modules:
Great work @KristjanESPERANTO. Really, really like this. Is there a way to also publish the github stars and # of forks? I also would love if there is a way to “like” a module.
Thank you for your appreciation! :-)
karsten13 has already suggested the GitHub API and I have tested it, but if you make requests for 1000 modules you’ll got blocked quickly. I haven’t found another good approach yet.
@MMRIZE said in Automatic checking of all MagicMirror² modules:
I suggest you and the community expand package.json to regularise the details of the module. (recommended but optional)
Storing additional data in the package.json is an interesting idea! But I would like to avoid maintaining data redundantly. So before we tackle this, it would be good to have an overview of the data that is already used for the website and where it is taken from. Plus an additional list of data that is still needed, ideally with ideas on how to collect it. What’s not easy to implement could perhaps be addressed by extending the packge.json.
@mumblebaj said in Automatic checking of all MagicMirror² modules:
My MMM-SweepClock doesn’t have a package.json either as all work done in the MMM-SweepClock.js file. I can add one for completeness and conformity. I also notice I did not have an image. I usually name my images image-1.png etc. so the main image is generally the first one.
At the moment the script has no other source for keywords and the license. And without the license information no image will be taken. If you want an image to be displayed on the website, you would have to specify a free license in the package.json.
@sdetweil said in Automatic checking of all MagicMirror² modules:
my MMM-SleepWake module does not have any UI… so there is no photo…
There is no obligation for an image. But perhaps it would be nice to use an icon that symbolizes motion detection instead of a screenshot. Like this maybe: https://openclipart.org/detail/306403/motion-detection?
-
@KristjanESPERANTO said in Automatic checking of all MagicMirror² modules:
karsten13 has already suggested the GitHub API and I have tested it, but if you make requests for 1000 modules you’ll got blocked quickly. I haven’t found another good approach yet.
2 ideas:
- did you try to authenticate with a user before making the api requests? AFAIR we solved a similar problem at work with authentication …
- if first idea doesn’t work an ugly solution is to work with e.g. a timer or sleep statement because these infos are not changed very often this could be a long running nightly job
-
@karsten13 said in Automatic checking of all MagicMirror² modules:
did you try to authenticate with a user before making the api requests?
No, I didn’t. Thanks for the hint! I’ll try that! The documentation sounds promising:
Additionally, you can make more requests per hour when you are authenticated.
-
@KristjanESPERANTO You know, this is turning more and more into a NPM type project.
Perhaps it’s time to work on getting MM into the NPM ecosystem instead?
-
@BKeyport mm is already there but old