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.

    So then, what languages to learn?

    Scheduled Pinned Locked Moved Development
    6 Posts 5 Posters 6.0k Views 5 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.
    • strawberry 3.141S Offline
      strawberry 3.141 Project Sponsor Module Developer @NathTheDude
      last edited by

      @NathTheDude you will need js to give your module some logic, some basic html for the layout and also a bit css for styling.

      But you can also write your main logic in nearly every language you want, a couple of people used python for example. Though you would still need a wrapper in js to integrate it to MagicMirror.

      Please create a github issue if you need help, so I can keep track

      1 Reply Last reply Reply Quote 2
      • cowboysdudeC Offline
        cowboysdude Module Developer @NathTheDude
        last edited by

        @NathTheDude said in So then, what languages to learn?:

        So, I want to start playing with the modules and customising them for my needs. It looks like the best language to learn is JavaScript and also CSS.

        I agree! It’s the easiest way to learn PLUS you can always ask and look in other modules for bits and pieces to see how things work. I mean a sendSocketNotification is a sendSocketNotification… things of that nature.

        Again, if you have questions please ask! :) I had to learn it too. It’s not too bad actually once you get the basics…

        1 Reply Last reply Reply Quote 1
        • N Offline
          NathTheDude
          last edited by

          Thanks @cowboysdude and @strawberry-3-141, will start looking at those.

          J 1 Reply Last reply Reply Quote 1
          • J Offline
            j.e.f.f Project Sponsor Module Developer @NathTheDude
            last edited by

            @NathTheDude If you’re already familiar with programming, even as a novice, JavaScript won’t be that hard to learn. Here’s a great place to start: https://www.codecademy.com/learn/learn-javascript

            And as @cowboysdude mentions, definitely look at other modules to see how things work specifically in MagicMirror.

            Don’t overlook the importance of how you structure your HTML markup. Resist the temptation to lay things out using table elements (table). Try to use div (typically for outer containers) and span (typically for elements within a larger container) elements instead. This will give you far more flexibility in your CSS when positioning elements. Take a look at my scoreboard module for an example of how the same markup can be laid out many different ways by specifying a particular CSS class to the outer container. Also, add CSS classes to all the significant parts of your markup. That way you can target any element using your CSS, and you’ll also make other people happy when they want to customize your module with their own CSS. A couple of great places to learn CSS: http://www.css-101.org/ (beginner) and https://css-tricks.com/ (advanced).

            1 Reply Last reply Reply Quote 1
            • M Offline
              McSorley
              last edited by

              From my attempts at learning, I think JavaScript and Node.JS are different. Even though node is created with JS it would be worthwhile learning Node.js to get an understanding of how it all runs.

              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