Mobile application development usually involves several stages, including designing the user interface, developing the application logic, handling data and building the finished application for the target devices. The approach depends on what the application needs to do, with developers using native platforms or cross platform frameworks such as Flutter and React Native for many types of mobile software.
Design is also an important part of the process. Tools such as Figma are widely used to create interfaces, prototypes and user flows before or alongside development. These tools are useful for defining how an application should look and how users should interact with it, but the underlying functionality still has to be developed elsewhere.
Comparing Other Tools
There are several different approaches to developing a mobile application, and each tool is designed for a different part of the process. Figma is primarily used for interface design and prototyping, allowing users to create interfaces, prototypes and user flows before development. Flutter and React Native are cross-platform development frameworks that allow developers to build applications for multiple platforms, with the interface and functionality developed through code.
These tools can also be used together. For example, an interface can be designed and prototyped in Figma before the application is developed using Flutter or React Native. The underlying functionality, calculations and data processing can then be implemented as part of the application. This provides a flexible approach for many types of mobile software, but it can also mean that different stages of the development process require different tools and technical skills.
MatDeck takes a more integrated approach, combining programming, mathematical computing, data processing, visualisation and GUI development within the same environment. Users can develop the functionality of an application and create its interface without having to move the work into a separate development environment.
A major part of this is the Python Designer and GUI Designer, which make it easier to create applications within MatDeck. The GUI Designer provides a drag-and-drop interface, allowing users to place buttons, input fields, controls, graphs and other components onto an application without having to build the entire interface manually in code.
The different approaches therefore serve different purposes. Figma is focused on interface design and prototyping, Flutter and React Native are focused on cross-platform application development, while MatDeck brings interface design and application functionality together with mathematical computing, Python and data processing in one environment.
This makes MatDeck accessible to a much wider range of users. You do not need to be an experienced mobile developer to create an application. The functionality can be developed using formulas, Python or MD Script, while the interface can be created visually using the drag-and-drop GUI Designer.
MatDeck for Mobile Applications
MatDeck combines mathematical computing, programming and GUI development within one environment. An engineer can develop calculations, use Python or MD Script, process data and create the application interface without moving the engineering work into a separate development environment. This provides a more direct way of turning an existing technical calculation into an interactive application.
The same approach can also be used for applications that are not specifically engineering based. A user can create a calculator, data-entry tool, educational application, dashboard or other interactive application using the same environment.
For example, a technician could use an application that accepts several measurements and calculates a result based on an engineering formula. The calculation can be developed and tested in MatDeck, while the GUI Designer can be used to create the input fields, controls and outputs that the user needs.
The drag-and-drop GUI Designer makes it possible to create the interface visually, while Python, MD Script and MatDeck’s other functionality can be used to create the underlying application logic. This means the user can focus on what the application needs to do rather than having to learn a separate framework for every part of the development process.
Compact Web Build
Once the application has been developed and tested, Compact Web Build can be used to create a lightweight version for phones and tablets. The resulting application runs through the device browser, so the user does not need to install MatDeck in order to use the application.
The compact build is intended for focused applications rather than reproducing the complete MatDeck desktop environment. Larger desktop features that are not necessary for a particular mobile application can be excluded, allowing the resulting build to remain focused on the functions the user actually needs. This makes it suitable for engineering calculators, field tools, measurement applications, laboratory software, educational applications and other specialised technical tools.
From MatDeck to Mobile
The process starts with a standard MatDeck document. The calculation and supporting functionality can be developed first, followed by the application interface using the GUI Designer. The application can then be tested on the desktop to make sure that the calculations, inputs and outputs work as expected before deployment.
When the application is ready, the build options are available from the Programming ribbon under Evaluate, Build, Deploy. Web Build can be used where a broader browser based application is required, while Compact Web Build is intended for smaller applications designed for phones and tablets. The appropriate build can therefore be selected according to the functionality and target device.
The process is therefore straightforward: develop the functionality, drag and drop the interface, test the application and build it for the target device.
One Application, Multiple Uses
The same MatDeck document remains the basis of the application, which means the engineering functionality does not need to be recreated as a separate mobile project. Changes to formulas, Python code or the interface can be made in MatDeck and the application can then be rebuilt with the updated functionality.
This is useful for organisations that already have technical calculations or engineering tools developed in MatDeck and want to make them available outside the desktop environment. The development remains in the same environment, while the build process provides another way for users to access the finished application.
It also means that someone starting from scratch can develop an application without having to learn several different tools. The functionality, Python code and interface can all be developed within MatDeck, with the GUI Designer providing a simple visual way to build the application.
Using Applications Away from the Desktop
Mobile access is particularly useful when the work is being carried out away from a computer. A field engineer can enter measurements beside equipment, a technician can use a maintenance calculation on site, a student can interact with a mathematical model on a phone, or a sales engineer can use a specialised calculator during a customer meeting.
The important point is that the mobile application is built around the functionality the user needs rather than treating the calculation as something that has to be added later. MatDeck provides the environment for developing the mathematics, Python functionality and interface, while the Python Designer and GUI Designer make it straightforward to create and customise the application.
With the drag-and-drop approach, users can build the interface visually, connect it to their functionality and then use Compact Web Build to make the application available on mobile devices.
MatDeck therefore provides a simple path from an idea to a working application: develop the functionality, drag and drop the interface, test it and build it for mobile.