@BKeyport Good suggestion :-) But what do you think of this:
No keywords in 'package.json'. We would use them as tags on the module list website.
@BKeyport Good suggestion :-) But what do you think of this:
No keywords in 'package.json'. We would use them as tags on the module list website.
@sdetweil Yes, I mean this website: https://kristjanesperanto.github.io/MagicMirror-3rd-Party-Modules/. Information from the package.json files is used there.
@sdetweil said in Automatic checking of all MagicMirror² modules:
and this is misleading
There is no package.json. We need this file to gather information about the module.
I added ‘for the website’ at the end of the sentence. I hope that this is clearer.
Thanks for the feedback :-)
@mumblebaj said in Automatic checking of all MagicMirror² modules:
Just out of interest, which image does it select as the thumbnail?
If the script doesn’t find an image with ‘screenshot’ or ‘example’ at the beginning of the name it takes the first it finds .
The prerequisite for the whole thing is that a free license is specified in the package.json. If there is no package.json and no free license, no image will be searched.
Stats were great, fixed most of the issues identified in my modules.
Nice, thank you! I just updated the list and a lot of issues disappeared 👏
@sdetweil said in Automatic checking of all MagicMirror² modules:
I don’t know how to make that happen in my text editor
On my keyboard it’s just +
and its useless
I think it’s worth striving to call things by their proper names, so I don’t find the test useless. Feel free to just ignore it :-)
there is no need for a package,json… as this module does all its work inside the modulename.js there is no functional requirement
You are right, functionally there is no need for this. However, the file is a good source of information that is interesting for the website - e.g. keywords.
MMM-Alexa
Do you know if the original module (https://github.com/sakirtemel/MMM-alexa) still works? Otherwise I should mark it as outdated.
and one of my modules (the only one I have ever posted) is not present in the master list , and I did not remove it. MMM-SleepWake
I’ve added it now :-)
In the last few days I have worked on some details on the site. So if you’re interested, take a look: https://kristjanesperanto.github.io/MagicMirror-3rd-Party-Modules/.
And there is now a little statistics table on the results page: https://github.com/KristjanESPERANTO/MagicMirror-3rd-Party-Modules/blob/main/result.md#statistics
I have also created a few PRs based on the list for some modules. Most of them have already been accepted :-)
@sdetweil Just out of curiosity: Is the library moment.js?
@UncleRoger What happend to it? The repository isn’t available anymore.
@UncleRoger Nice. Do you want to add it to the list of modules?
https://github.com/MichMich/MagicMirror/wiki/3rd-Party-Modules
edited to fix url
@Jalibu said in Automatic checking of all MagicMirror² modules:
hmm… if this is the cornerstone for a proper MagicMirror Appstore, then I should consider renaming all my modules to start with the letter “A” to attract more attention on the landing page :-D
Yeah, I’m already have some ideas about the default sort order (like a combination of stars, issues and activity), this will prevent that :beaming_face_with_smiling_eyes:
@karsten13 said in Automatic checking of all MagicMirror² modules:
You can get such info’s over their api.
Unfortunately the API blocks me when I make queries for almost 1000 modules in a short time 🤪
I now take the tags from keywords in the package.json.
I made some progress: https://kristjanesperanto.github.io/MagicMirror-3rd-Party-Modules/
There’s still a lot on the to-do list and some things aren’t working quite smoothly yet. But the website is now filled with data from all modules from the wiki.
When changes are made in the wiki, it doesn’t take much effort to update the data in this project - I just have to run a few scripts. Furthermore, no manual work is necessary.
@karsten13 said in Automatic checking of all MagicMirror² modules:
category and tags are similar, do we still need a category?
Good point! The mass of tags will certainly become a bit confusing. We could replace the category links in the menu by a few selected tags or we highlight certain tags so that they are more noticeable. I think I’ll try it in this direction.
@MMRIZE said in Automatic checking of all MagicMirror² modules:
MMM-Remote-Control uses similar JSON as a module-list.
You’re right, it would be cool to get compatibility with MMM-Remote-Control. Thanks for the hint!
@karsten13 said in Automatic checking of all MagicMirror² modules:
as most modules are hosted on github: You can get such info’s over their api.
Wow. That’s really nice! There are certainly some things that can be put to good use.
After you showed me the examples, I tinkered a bit with a simple frontend (without dependencies): check it out. I just have to fill it with real data.
@karsten13 said in Automatic checking of all MagicMirror² modules:
if you really want to check yml vs. yaml
Yeah, I’ll drop this test for now.
maybe this could be also a starting point to have the module list as e.g. yaml output with all current stuff and your analysis results.
Interesting direction. I’ll take a look at it 🙂
Guys, like I said, the project is in early status! The tests so far should therefore be understood as a proof of concept. Maybe I could have made that a little clearer in my initial post.
In any case, thanks for the feedback! 😃
Categorizing the messages would certainly also make sense. Like: critical, warning and information.
@sdetweil said in Automatic checking of all MagicMirror² modules:
things that depend of features no longer available in the os like vcgencmd
Is vcgencmd really no longer available? I don’t have the current OS version yet, but I can’t find any information about removing it in the documentation:
https://www.raspberrypi.com/documentation/computers/os.html
If so, what would be the alternative?
and omxplayer
Thanks. This is a solid suggestion, just like I was looking for! 😃 I have added this to the check list. There are a handful of modules which contain omxplayer.
I don’t have a concrete approach for your other suggestions.
@MMRIZE said in Automatic checking of all MagicMirror² modules:
There are also wrong checks. (For example, MMM-ModuleMonkeyPatch …
Ah, I used the module to provoke errors manually. I forgot to remove the folder 🤦. The checks themselves are not wrong.
dependency checking is information ordinary users …
Ordinary users are not the target group for this project. The project collects information about modules, the developers can do whatever they want with the information (even ignore it).
For the core developers it is certainly sometimes interesting (e.g. before breaking changes) which modules still depend on a core functionality.
it would be better to reveal the last update date or the number of unresolved issues to guess the module’s activation level or popularity
Those are good points, thank you! I put them on the to-do list.
Or, if you are going to parse package.json anyway, I think it could be used to organise installation methods, etc.
Yes, I had already thought about parsing the package.json. What do you mean by “organise installation methods”?
I started a small project. It’s still in its early stages and I don’t know where it’s going yet, but maybe it’ll be interesting for you.
Since the quality of the modules varies greatly, I thought about how to automatically detect easily recognizable issues (e.g. typos or dependencies on deprecated packages).
Basically it already works.
This is what it does:
This is the result of the last check: https://github.com/KristjanESPERANTO/MagicMirror-3rd-Party-Modules/blob/main/result.md
Do you have any ideas about useful checks?
Nice! I think the real-time clock is a useful new feature for the MM. With that we should be able to wake up the Raspberry Pi automatically without any external device.
@Hinge Can you please describe in more detail what you commented out?
@Hacksaw There are good Websites that can translate texts - e.g. https://www.deepl.com/. Try again in English and describe more precisely what you want. This is not clear from your current text.