• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

Community opinions on an interactive List module

Scheduled Pinned Locked Moved Development
2 Posts 2 Posters 228 Views 2 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Offline
    cpcode
    last edited by Nov 22, 2024, 8:43 PM

    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!

    S 1 Reply Last reply Nov 22, 2024, 9:37 PM Reply Quote 1
    • S Away
      sdetweil @cpcode
      last edited by sdetweil Nov 22, 2024, 9:39 PM Nov 22, 2024, 9:37 PM

      @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/jsonform

      I 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 json

      apis to update whatever source are the challenge
      accessing from phone is possible with jsonform too… its just a web page

      I use OurGroceries and Mealie as well.

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      1 Reply Last reply Reply Quote 0
      • 1 / 1
      1 / 1
      • First post
        1/2
        Last post
      Enjoying MagicMirror? Please consider a donation!
      MagicMirror created by Michael Teeuw.
      Forum managed by Sam, technical setup by Karsten.
      This forum is using NodeBB as its core | Contributors
      Contact | Privacy Policy