When was the last time as a developer you were able to develop a simple CRUD application in less than 20 mins? Well, you don’t remember it, do you? Mendix has made that possible. With Mendix you can build an application using No Code at all and deploy it in a matter of minutes.
What is Mendix
Mendix is a low-code software platform. It provides you tools using which you can to build, test, deploy applications. You can build simple applications to an enterprise-grade complex application with Mendix using graphical user interfaces and configuration instead of traditional computer programming.
Agile Methodology and DevOps is at the core of Mendix. As part of this methodology, Mendix supports continuous planning, continuous testing, continuous integration, and other forms of continuous development.
The Mendix provides you a Desktop Modeler and Web Modeler to develop your application. You can sync all the work between these two, so you can work as you go. You can download the Mendix modeler from this link and install the executable with default options.
Only catch here is that you can not use your free email to create an account with them, that means your Gmail, Yahoo or any free email services are not useful.
Once you have it installed on your desktop, launch it. You can start a new project based on some pre-built UI configuration or a completely blank project.
I prefer to use a base project that is prepared using Atlas UI
Mendix comes with inbuilt version control and cloud deployment support. You can choose this option while creating the project.
The Domain Model
The domain model is at the core of your Mendix application. It describes your data model that your application uses. The domain model consists of entities and their relations represented by associations.
To add an entity to your application, simply right click on the domain model and select Add Entity. You can also define the associations by adding arrows between these entities.
Above you can see that 2 simple entities are defined along with their association.
Adding a page to your application is as easy as eating a cake 🙂
While adding just provide page name. You need to choose if you want to use any prebuilt page design for your needs or the blank page. Also, you have to choose the Navigation Layout i.e. how the menus of your application will appear on your page.
Once you have added a page, you will get a blank area to work on. You can drag and drop different elements from Mendix Toolbox to create a responsive and fully functional web page.
Usually, an enterprise application needs more than just pages to cater to CRUD requirement. Your application needs to have its own business logic. To help you with this platform provides you with Microflows. Microflows allow you to build the logic of your application. A microflow can perform actions such as creating and updating objects, showing pages and making choices.
The microflows are built using the graphical notation based on the Business Process Model and Notation (BPMN). BPMN is a standardized graphical notation for drawing business processes in a workflow.
You can read about more elements in the microflow here
Data Validation and Consistency
Mendix is not just about adding pages and data. It also provides you with comprehensive data validation and consistency checks at Entity level as well as Input level.
For example, in our Entity Employee, if we want to make it Mandatory and Unique you can do that as shown below
Similarly, at input level you can add the validations like
The Mendix Platform comes with improvised Application Security based on User Roles. You can define which pages, entities, and microflows are accessible to which role. You can even define the granular access on entity attributes for any role.
The Development Platform provides you with very easy to configure screens for all these roles based settings.
By default, each user which visits the Mendix Application is treated as an Anonymous user and has a role of User. You can also define Role-based customized Homepages.
During development, you can choose 3 types of security settings, but when your application is deployed to production, Mendix sets it to Production level.
The Modeller also tells you which pages, entities are lacking proper access and rights so you can review and give them the correct rights as per your application settings.
The Team Server
The Mendix Low Code Platform comes with a default version control plugin that is built on top of Subversion. As we mentioned earlier, your account which you used to signup with Mendix is used as your credentials for version control system
For Free Apps, there is a limit on how much space is utilized by the code in the Team Server. Commercial licenses have unlimited Space allocated.
The process is coupled with an Agile approach and each commit can be linked to the user stories which in turn reflects your project requirements. The Team Server will automatically create links between these user stories and the model changes you made, providing you with a way to navigate from commits to the associated requirements.
The brief overview about Mendix Low Code Platform gives you a sound impression about its capability in the rapid development era. You can use this platform to build and take your application faster to market.