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.

    MMM server mode

    Scheduled Pinned Locked Moved Hardware
    8 Posts 2 Posters 1.3k 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.
    • M Offline
      mmcghee @sdetweil
      last edited by

      @sdetweil OK, thanks for that. I’ll do some more digging in the Web side of it and see where I can go from there. My programming skills are not great but I’ll have a crack at it.

      Cheers
      Michael

      S 1 Reply Last reply Reply Quote 0
      • S Offline
        sdetweil @mmcghee
        last edited by sdetweil

        @mmcghee so, MM is a framework for creating a composable information panel.
        (composed by assembling multiple independent information providers (aka ‘modules’))

        the ‘modules’ know nothing about the runtime environment except a few functions. they do not actually modify the web dom directly… they create content on their independent schedules and the runtime manages the display.

        as web code cannot directly access the underlying system (read/write files, touch hardware, …) the node_helper component of a module is used on the ‘server’/not browser side to do that directly… and a data passing pipe is provided (using web sockets under the covers) between the web component and its helper…

        the node_helper doesn’t know anything about the web environment. , just takes requests and sends responses.

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        M 1 Reply Last reply Reply Quote 0
        • M Offline
          mmcghee @sdetweil
          last edited by

          @sdetweil ok, fair enough. I assumed that the touchscreen to communicate via a server would be a tough stretch. I’ll run it all through it’s own dedicated PI 4 then. I have a 2gb and a 4gb lying around not doing anything so i’ll use one of those instead.

          Will i be better using the MM OS or using rasbian and build MM on top of it?

          Thanks
          Michael

          S 1 Reply Last reply Reply Quote 0
          • S Offline
            sdetweil @mmcghee
            last edited by sdetweil

            @mmcghee MM is just a javascript application.

            there is nothing to ‘build’, its all source level dynamic execution.

            one install supports running all three execution environments

            • full (uses electron as the web engine),
              this is the default, my install script does the setup for this… but easy to change one file to change the environment to execute)

            • server only (no web component, use some supporting browser someplace else, es6 latest)

            • client only - only browser side using electron to display

            if it were me I would build my own til I know what I need to do, then maybe a MMOS, or other docker deployment might be useful…

            as we don’t typically see multiple servers on sep ports on the same machine, in my opinion docker is additional overhead for nothing gained

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            1 Reply Last reply Reply Quote 0
            • M Offline
              mmcghee
              last edited by

              Cheers. I’ll have a muck about. Using a full environment will probably be the road i go down as server wont be good for the touchscreen for what i want it for and client is of no use whatsoever. I’ll put together what i’m looking for along with the appropriate modules and take it from there.

              Thanks
              Michael

              S 1 Reply Last reply Reply Quote 0
              • S Offline
                sdetweil @mmcghee
                last edited by sdetweil

                @mmcghee cool… also note that the base doesn’t provide any touch support in any module, as they are designed for output only…

                you might want to look at this topic
                https://forum.magicmirror.builders/topic/18011/touchscreen-family-dashboard

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                1 Reply Last reply Reply Quote 0
                • 1 / 1
                • First post
                  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