We considered existing languages that are used in various app dev solutions for writing Mat|r models but they were far from optimal for the task. We decided to create from the ground up a language that would provide the semantic simplicity needed to make Mat|r an easy to learn, integrate and extend application development tool - a high level language purposely designed for modeling digital experiences.
Thanks to Mat|r|script, Mat|r is not dependent on external frameworks where the next update or new priorities out of our control could cause issues. Mat|r|script will evolve to meet the needs of the Mat|r developer community. No compromises, workarounds or accommodation of code originally designed for another purpose.
Currently iOS and Android with web browser coming very soon. Native apps will be generated from your model for any device/platform for which there exists a Mat|r|broker.
For a programmer it will take one or two days to learn Mat|r|script. That’s a pretty low bar to cross to gain all the advantages that Mat|r|script offers for modelling experiences.
Coding in Mat|r is incredibly fast and simple, one Mat|r model generates native apps for iOS, Android and web. You can build more complex and richer apps, build them faster and streamline ongoing updates and maintenance and without compromising performance.
If you need multiple data connections or IoT distributed solutions with a few lines of code, you might want to consider Mat|r. Leave the complex parts and the multi-platform support to Mat|r and focus on your business logic.
In most applications a user will not see a difference between a native app built with Swift or Java and a Mat|r built native app. The classes of apps where there will be no real world compromise compared to native code will grow over time.
Remember that Mat|r|brokers are open source and native so you are free to add native code to the brokers where you think performance issues require it. We are working on a spec that will allow this to be done while maintaining compatibility the Mat|r system.
The Mat|r toolset provides the Mat|r viewer app, which is a development tool app you can download through the apple store and google play for free. This tool gives you instant access to the apps you are development, so you can test, visualize and execute latest changes in almost real time.
YES! Whenever you have a version ready to publish of your app, you can generate a dedicated app which means, you can generate an .ipa file for iOS and .apk file for Android, and upload them to the stores.
The Brokers run on the destination device native. We wrote the Mat|r iOS broker in Objective-C and the Mat|r Android broker in Java. We are currently planning an Angular broker for web.
The open source brokers (which is your Mat|r app on the target device) are native. You can add native code to the broker should you think it is required for your app. We are working on a spec that will allow this to be done while maintaining compatibility the Mat|r system.
A Mat|r AppModel, provides the entire definition of a Mat|r app which contains the initial data, UI layouts definitions and business logic.
YES! Each dedicated Mat|r app checks continuously for updates on its AppModel. You can update the code of your apps in the Mat|r platform, increase the version and this triggers automatically an update in the AppModel which can provide an update of your UI, logic or both; without the need of update the binary code.
As soon as we are finished beta testing, we will open the Open-Source project to the community. If you sign up at matrproject.com you will get a notification and be among the first to get access to the Mat|r source code.