generated from it-at-m/oss-repository-en-template
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* 🔥 docs rm example pages * 📝 docs init overview * 📝 docs overview fix typos * 📝 docs overview implement review comments * 📝 docs overview implement review comments
- Loading branch information
Showing
3 changed files
with
65 additions
and
142 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,66 @@ | ||
# Overview | ||
|
||
The reference architecture of it@M (further referred to as "RefArch") provides a frame for developing web applications and integration components. | ||
It's based on [Spring](https://spring.io/) as backend framework and [Vue.js](https://vuejs.org/) as frontend framework. [Apache Camel](https://camel.apache.org/) is used as integration framework. | ||
|
||
This website contains documentation for the general topics about the reference architecture, as well as content about generic and ready-to-use components. | ||
Additionally, there is [documentation for repository templates](https://refarch-templates.oss.muenchen.de), which is especially relevant when developing own applications with the RefArch. | ||
|
||
The following sections further describe the architecture and its involved components. | ||
|
||
## Architecture | ||
|
||
The RefArch is a microservice-based architecture where each service can be scaled and developed independently. | ||
Following up is a description of the different components and a visualization of the connections between them. | ||
|
||
Most applications consist of an API gateway, a frontend (served by a webserver) and a backend component. | ||
Besides that there can be cases where modular frontends through web components, multiple frontends or multiple backends are desired. | ||
|
||
```mermaid | ||
flowchart LR | ||
u([Users]) | ||
g[API-Gateway] | ||
f[Frontend] | ||
b[Backend] | ||
w[Web component] | ||
u --> g | ||
g --> f | ||
g --> b | ||
g --> w | ||
``` | ||
|
||
### API gateway | ||
|
||
The API gateway is a ready-to-use component and the only exposed interface for accessing the application. | ||
It manages all requests and routes them to the respective development components like frontend and backend. | ||
Besides that, it also handles cross-cutting concepts like authentication using a SSO. | ||
|
||
See [API-Gateway](./gateway.md) for further information. | ||
|
||
### Frontend | ||
|
||
The frontend provides the application UI and is developed with Vue.js. It calls the backend (via the API gateway) for reading and modifying data. | ||
It's developed separate for each application and therefore a default template is provided. | ||
|
||
The template is described [here](https://refarch-templates.oss.muenchen.de/frontend). | ||
|
||
### Backend | ||
|
||
The backend provides a REST-API for reading and modifying application data, handles business logic and access to databases. | ||
Like the frontend the backend is also provided as a template. | ||
|
||
The template is described [here](https://refarch-templates.oss.muenchen.de/backend). | ||
|
||
### Web component | ||
|
||
The web components template enables development of modular frontend components which can be integrated into other applications. | ||
This concept is also known as micro frontends. By default, most applications won't require this template. | ||
|
||
The template is described [here](https://refarch-templates.oss.muenchen.de/webcomponent). | ||
|
||
## Enterprise Application integration (EAI) | ||
|
||
Beside the development of web applications, the RefArch also provides a template for enterprise application integration (EAI). | ||
This enables integration between existing applications. By default, most applications won't require this template. | ||
|
||
The template is described [here](https://refarch-templates.oss.muenchen.de/eai). |