Read the statement by Michael Teeuw here.
Community opinions on an interactive List module
-
Building my first MM project, it’s a touch-screen for the family. One of my main needs is the ability to display interactive lists: meals for the week, items in our deep freezer, etc. I’d like the community to weigh in on whether you think it would be better for me to write my own module or use & modify an existing one.
For context: I built my first module already, a fairly easy timer. I’m fine with JS and CSS, though this is my first real node.js and Linux experience.
Requirements and nice-to-haves:
- ability to add/edit/remove items directly on the screen
- ability to optionally show a quantity for each item, and to easily change that. Worst-case I can do this within the item text, but it’d be nicer for the family to have a number they can touch and change next to each list item
- multiple lists
- ability to access the list from my phone while I’m out. This isn’t an absolute requirement but it would be nice.
I looked at the existing 3rd party modules, and the biggest issues are lack of interactivity - since many of you have this as a mirror, - and unknown module support. Modules that display from AnyList, Todoist, Microsoft To Do, Google Keep/Shopping List/Sheets look ok but I’d have to implement the interactive bits, as well as any other changes (some of the above may not work anymore).
Ideally I would love an integration with OurGroceries but I’m not sure I’m quite up to that task. I also looked at Mealie, which looks great, but the API is a bit daunting.If implementing my own module, I’d probably just keep the lists as json files in the module folder. I’m guessing this would be easier, but I don’t know how useful it would be to the community.
This is an open-ended prompt, and all thoughts are much appreciated. Are there modules out there I could use or build on? What do you think are some pros and cons?
Thanks! -
@cpcode welcome to the fun… you’ve done a good bit of the analysis work.
as you’ve seen, very little interactivity is provided today
there is a keyboard module https://github.com/lavolp3/MMM-Keyboard
but thats such a tiny part of what you want to do…
MM is a web page, so you can do it. .maybe managing the content and form are doable in the JSONFORM library
https://github.com/jsonform/jsonformI use this in my MMM-Config module for customizing MagicMirror config.js without editing
I’d store this kind of data in a mongo db, its all json, don’t have to do sql
then there are modules that can display from jsonapis to update whatever source are the challenge
accessing from phone is possible with jsonform too… its just a web pageI use OurGroceries and Mealie as well.