Using m.js, in addition to the trivial asynchronous connection, has some interesting code-running features. The module loader and their CSS are built into m.js.
In our JS framework, m.js has a number of built-in functions that can be applied to elements wrapped in an object m. These include getting properties, DOM operations, property operations, and more.
All of most used modules of m.js. They usually loaded dynamically and asynchronously by m.js. All you need - it's type `data-m-action` and several optional attributes in an initiator element.