Modularity in backend layer is built around an (internal) bus, where modules emit and subscribe to events.
OpenIMIS BE core provides:
- building blocks to address topics such as:
synchronous/asynchronous messages (events) to/from other Software components and other OpenIMIS modules
- transversal features related to:
- User & Security (login, profile, roles, audit,...)
- Job scheduling, monitoring,...
- Transaction and error management
Each OpenIMIS FE module is standardised to
- expose (automated) REST Api (aligned to DHIS2 way of working?)
- allow built-in or overloaded extensibility
- implement ORM and database migrations