Skip to content

Architecture

Cátia Raquel Jesus Vaz edited this page Sep 11, 2023 · 6 revisions

phyloDB was implemented based on three layers, namely Controllers, Services and Repositories.

When a request is received by the API, it is passed through the Controllers layer. This layer contains the controllers that parse the received input, execute the respective service, and retrieve the response containing the respective status code and the formatted content. The Services layer contains the services that perform the business logic and use the needed repositories. The Repositories layer holds the repositories that shall provide operations to interact with the database.

The API, depicted in API documentation, allows to perform several operations over the data stored in the database. The database relies on a graph data model, which is depicted and detailed in PhyloDB data model.

Algorithms are deployed as plugins, as explained in Algorithms as Plugins.