Appmixer Architecture

High-Level Architecture

Appmixer consists of multiple technologies that interact with each other:

Appmixer High-Level Architecture
  • Appmixer Engine: the main system that manages flows, orchestrates components within running flows and provides a HTTP REST API interface to access all the entities within Appmixer. The Appmixer engine is implemented in NodeJS and can run on a single node or in cluster. The engine is horizontally scalable providing high availability and fault tolerance capabilities.

  • Appmixer UI SDK: the JavaScript HTML 5 SDK that allows to seamlessly embed any of the Appmixer UI widgets (including the drag&drop flow designer) to any 3rd party web page. The SDK communicates with the engine via REST API.

  • Appmixer Backoffice: the admin panel UI providing overview of all the flows and users in Appmixer together with configuration.

  • Appmixer CLI: the command line tool that is mainly used to manage custom connectors (upload, delete, ...).

  • Supporting Technologies: RabbitMQ message broker, MongoDB NoSQL database, ElasticSearch search engine, Logstash collector of logs and Redis key-value store. All the supporting technologies can also run either on a single node or in cluster.