Basic Structure
Last updated
Last updated
Components in Appmixer are structured into "services", "modules" and "components" hierarchy. Each service can have multiple modules and each module can have multiple components. For example, "Google" service can have "gmail", "calendar" or "spreadsheets" modules and "gmail" module can have "SendEmail", "NewEmail" and other components:
This hierarchy is reflected in the directory structure of component definitions. Typically, services and modules are structured in two ways. Either the service itself appears as an "app" in Appmixer or modules are separate apps. If a module has its own manifest file (module.json
), it is considered a separate app in Appmixer.
For example, in case of Google, we want to have separate apps for each module (GMail, Calendar, Analytics, ...):
But in case of Twilio, we may just want to have one app and all the actions/triggers as different components of the Twilio app:
As mentioned in the previous section, services, modules and components must follow the service/module/component directory structure. The following images show the two different ways you can structure your services (i.e. modules as separate apps or a service as one single app).
Service manifest is defined in the service.json
file. The file has the following structure:
Available fields are:
Field | Description |
| The name of the service. The name must have the |
| The label of your app. |
| App category. By default, components shipped with Appmixer are divided into two categories "applications" and "utilities" but you can have your own custom categories too. Just use any custom category name in the service manifest file to create a new category and add your service to it. This category will become automatically visible e.g. in the Appmixer Designer UI. |
| App category index. By default, categories are sorted alphabetically, you can change that using this index property. Optional. |
| The app index within the category. This allows sorting the apps within the same category. |
| Description of your app. |
| App icon in the Data URI format. |
Module manifest is defined in the module.json
file. The file has the following structure (similar to the service.json
file):
Available fields are:
Field | Description |
| The name of the module. The name must have the |
| The label of your app. |
| App category. By default, components shipped with Appmixer are divided into two categories "applications" and "utilities" but you can have your own custom categories too. Just use any custom category name in the module manifest file to create a new category and add your app to it. This category will become automatically visible e.g. in the Appmixer Designer UI. |
| App category index. By default, categories are sorted alphabetically, you can change that using this index property. Optional. |
| The app index within the category. This allows sorting the apps within the same category. |
| Description of your app. |
| App icon in the Data URI format. |