Overview of the samples
The samples are structured into use cases. Each use case uses different components from the modelix platform to create custom solutions.
On this page, you can get an overview of all use cases, and see how they are related and what their essential differences are.
It shows how to make model data, previously accessible only in a running MPS or via files, available through a server.
In itself, this use case has little value, but the next use cases build in part on it.
See the Use case 1 page for details.
In this use case, we connect web frontends to a model server. The web frontends read from and write model data to the model server.
You can see how changes made in one connected application are instantly reflected in another connected application. You can also connect an MPS to the model server and see how changes made in the application are synced to MPS and vice versa.
See the Use case 2 page for details.
In this use case, a web frontend connects to a web backend, which in turn communicates with a model server.
Like in use case 2 model data is synced automatically between the model server, the application and MPS.
A backend is needed if you need to control what data a client might read and write. It is also useful to translate data from modelix data structures into a data structure that is suitable for your web applications.
The web backend is implemented with Quarkus. It uses the model-client to connect to a model server. It also uses a Kotlin API generated by the Model API generator from the metamodel to enable type-safe access to data structures provided by the model client.
For the Angular based web frontend, the web backend provides a custom HTTP- and websocket-based API.
See the Use case 3 page for details.