openIMIS Modules

In openIMIS, (nearly) everything is a module: even "low level" (and mandatory) features follow this principle.

In other words, even the following features are implemented as (interchangeable) modules:

  • Login (authentication)

Beyond these low-level modules, several modules will be dedicated to configuration/administration:

The real business needs will be implemented in dedicated modules:

In addition, the following modules are used for integrating openIMIS with external systems:

Tests cases for the various modules are documented in a separate wiki page.

Plugins (can) provide several types of archetypes, dedicated to the various openIMIS layers: openIMIS Mobile FE, openIMIS Web FE, openIMIS Online BE, openIMIS Batch BE,...

openIMIS can be deployed with an extra layer dedicated to implement a FHIR API, based on openIMIS core (base) modules.

Today the FHIR API is a unique module, but there is an open point on splitting it into separate modules (per FHIR resource?):

Code (static) analysis, as well as unit tests coverage metrics of each module, is automated via travis-ci and codeclimate. You can log into these tools via your GitHub login. If you are registered in openIMIS GitHub, you'll have access to openIMIS build job and code quality metrics.