Seeking Best Practices for Structuring Complex Mendix Applications with Reusable Modules

0
Hi everyone,   I’m currently working on a medium-to-large Mendix application and wanted to get some community insights on best practices for organizing the app structure, especially when it comes to managing complexity and maintaining reusability over time.   My app involves multiple user roles, a growing number of domain models, and a variety of microflows/nanoflows that are starting to feel a bit tangled. I’ve already modularized some core features into separate modules, but I feel like there’s more I could do to keep things clean and scalable—particularly when dealing with shared logic (e.g., validations, formatting, service integrations, etc.).   A few specific questions I’d love your advice on: How do you decide what logic or components belong in a reusable module versus remaining in the main app? Are there naming conventions or folder structures you follow to make navigation easier as the app scales? How do you manage cross-module dependencies without tightly coupling everything? Have you run into performance issues or maintainability problems due to how the modules sap abap training in chennai were structured—and if so, how did you resolve them? I’ve looked at the Mendix docs and some marketplace modules, but I’d love to hear from developers who’ve been through this in real-world projects. Any shared lessons, tips, or examples would be extremely helpful.   Thanks in advance for any insights you can offer! I’m excited to learn from this community and improve the architecture of my application.
asked
1 answers
0

hi, Kelly

Ditigal transformation of the company functions requires a wide appraoch. But to make it simple one way can be scheting a map of company functions. Every big scale function can be handled within an app or module. 

Some standart data  can be set into one module/app that is called stamdata or master data.

If you work with multiple apps, you can use rest services/interfaces in order to connect your apps.

If you use one app then one module can be a main module where the app communicates with the client.

The other moldules can perform the secondary functions. For standat functions you can build standart modules and intall them to market place and then downlaod them to other apps. For example: Standart search functions, handeling documents e.g.

Use workflows for functions that include multiple phases. It can be better to keep all workflows in one app/module/folder or you can keep them according to their functions.

And one important issue is to define the roles. There will be bussines roles, project roles and module roles.  It is fine if you check mendix docs. https://docs.mendix.com/refguide/user-roles/

If we think a school app as example module and folder naming can be like this:

  Personel>

     Theachers

     Medewerkers         

  Students>

       Registration

       Progress

       Documents

  Lessons>

       Lessons Overview

       Locations Overview    

  Planning>

      Plan Lessons

      Assign teacher

      Assign student

      Maintain Exams

  Finance

   ...   

It is also better to go through these documents: 

https://docs.mendix.com/refguide/dev-best-practices/

answered