> For the complete documentation index, see [llms.txt](https://docs.gapvelocity.ai/webmap/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gapvelocity.ai/webmap/general/backend/architecture.md).

# Architecture

This section talks about the `Architecture` of `WebMAP5`. This architecture consists of the `Core Services` (Components on the blue box), a `Client` web application, and a `Desktop Compatibility Platform`.

![](https://4139013925-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MEOm98BbzqckTUoLpXN%2F-MF6hIgpDVJgnSJbCMyU%2F-MF6hTxFXedfKHlHzt2E%2Fall-in-one.jpg?alt=media\&token=767fe896-6d40-4728-84bf-bf1861e8ab2b)

For a more in-depth explanation of each component, please go the specific documentation page for each one of the main components:

* `Core Services`:
  * `Core module:` This Module is in charge of managing all the task related to observables, like `Reference Management`, `Storage of Observable`, etc.
  * `Messaging Module`: This Module is in charge of communication between components, features like `Mappers` are implemented in this component.
  * `Web Server Module`: This Module is in charge of the communication between the `Client` application and the backend.
* `Desktop Compatibility Module`: This Module is designed to be replaced depending on the source platform. For example, there is a `Winforms Desktop Compatibility Platform` which is intended to be used when a `Winforms` application is migrated.

### WebMAP request execution

`Core Services` contains several [middlewares](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/middleware/?view=aspnetcore-7.0) that allow the implementation of memory state tracking in an ASP.NET Core application, said middlewares create a layer between the native ASP.NET Core mechanisms and a WebMAP application which are used to handle the correctness of an application's state during its lifecycle.

<figure><img src="https://4139013925-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MEOm98BbzqckTUoLpXN%2Fuploads%2FyjqdyGYu9QO5NJQ7jM0G%2FWebMAP%20Sequence%20Generic.drawio.png?alt=media&amp;token=d05a5ed6-ac3f-44bb-a3e0-eb4583a7fad1" alt=""><figcaption><p> WebMAP request sequence diagram</p></figcaption></figure>

{% file src="/files/qlww5qxDRNqTGuYFy1G7" %}
