# Component Diagram

<figure><img src="https://3640233154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FuT3rClXbC6ZXgkNM76Vm%2Fuploads%2Fgit-blob-2a8d636601d93c9105e5a80174fac55562cdd04e%2FML%20Reports%20Service%20L0%20(1).png?alt=media" alt=""><figcaption><p>ML Reports Component Diagram</p></figcaption></figure>

The ML Reports Service is constructed using a Druid as a data source. Additionally, it seamlessly collaborates with vital services like [ML Survey Service](https://ed.sunbird.org/older-versions/contribute/source-code/workflows/manage-learn/ml-survey-service), [ML Core Service](https://ed.sunbird.org/older-versions/contribute/source-code/workflows/manage-learn/ml-core-service), and [Gotenberg](https://gotenberg.dev/). This Microservice comprises six pivotal Modules, each playing a crucial role.

#### Assessment

This module helps to get data related to the assessment

#### Resource

It gets data from Druid for any resource and program in which location it started.

#### Reports

Responsible for generating reports.

#### Projects

Responsible for generating reports on Project Document

#### Observation

Responsible for generating reports on Observation Document

#### Survey

Responsible for generating reports on Survey Document

### [Gotenberg](https://gotenberg.dev/)

Gotenberg provides a developer-friendly API to interact with powerful tools like Chromium and LibreOffice for converting numerous document formats (HTML, Markdown, Word, Excel, etc.) into PDF files, and more!

These six modules synergize as the backbone of the [ML Reports Service](https://ed.sunbird.org/older-versions/contribute/source-code/workflows/manage-learn/ml-report-service), empowering users to enhance and optimize Reports within the broader SunbirdEd ecosystem on the App platform.
