List of libraries for all the services.

Service

Library

Version

Purpose

Library Link

All Services

Spring Boot Framework

3.0.6

Simplifies Spring application development, including web applications and microservices.

Spring Boot

Spring Dependency Management

1.1.0

Simplifies dependency management in Spring Boot projects.

Spring Dependency Management

GraphQL Code Generation Plugin

5.7.2

Generates Java code from GraphQL schemas, facilitating GraphQL integration.

GraphQL Code Generation

SonarQube Plugin

4.0.0.2929

Integrates SonarQube code quality analysis into the project.

SonarQube

JaCoCo Plugin

Measures code coverage during testing, aiding in identifying areas needing more testing.

JaCoCo

Meitrex Common Library

0.3.1

Contains common utilities and functionality for MEITREX projects.

-

Spring Boot Starter Data JPA

Provides dependencies for using the Java Persistence API (JPA).

Spring Boot Starter Data JPA

Spring Boot Starter GraphQL

Includes dependencies for building GraphQL-based APIs.

Spring Boot Starter GraphQL

Spring Boot Starter Validation

Includes validation-related dependencies for data validation.

Spring Boot Starter Validation

Spring Boot Starter Web

Includes dependencies for building web applications.

Spring Boot Starter Web

ModelMapper

3.+

Simplifies object mapping, especially between DTOs and domain objects.

ModelMapper ModelMapperGettingStrated

GraphQL Java Extended Scalars

20.0

Provides extended scalar types for GraphQL in Java.

GraphQL Java Extended Scalars

GraphQL Java Extended Validation

20.0

Provides extended validation capabilities for GraphQL.

GraphQL Java Extended Validation

Dapr SDK and Spring Boot Integration

1.9.0

Allows working with Dapr and integrating it with Spring Boot.

Dapr SDK and Spring Boot Integration

Lombok

Simplifies Java code with annotations for generating boilerplate code.

Lombok

Spring Boot DevTools

Enhances the development experience with automatic application restarts.

Spring Boot DevTools

PostgreSQL JDBC Driver

JDBC driver for PostgreSQL databases, enabling interaction.

PostgreSQL JDBC Driver

Spring Boot Configuration Processor

Generates configuration properties metadata for documentation and validation.

Spring Boot Configuration Processor

Meitrex Common Test Library

0.1.0

Contains common utilities and functionality for testing MEITREX projects.

-

JUnit

4.13.1

Testing framework for unit tests.

JUnit

Mockito

3.+

Framework for creating mock objects in unit tests.

Mockito

Hamcrest

2.+

Framework for writing matchers in test assertions.

Hamcrest

Testcontainers PostgreSQL

1.18.3

Docker-based PostgreSQL container for integration testing.

Testcontainers PostgreSQL

Testcontainers Junit Jupiter

1.18.3

Integration between Testcontainers and Junit Jupiter for testing.

Testcontainers Junit Jupiter

JSR 305

3.0.2

Removes a Gradle warning about an unknown annotation.

JSR 305

All Services include skill level, quiz service, content, and course service.

Service

Library

Version

Purpose

Library Link

Media Service

Minio SDK

8.5.2

Provides a client for interacting with the Minio object storage server.

Minio SDK

Service

Library

Version

Purpose

Library Link

User Service, Assignment Service

Gson

2.13.1

Used to parse and manipulate JSON responses from external APIs.

Gson 2.13.1

Service

Library

Version

Purpose

Library Link

Reward Service, SkillLevel Service

Content Service

1.0.8

Includes content service for DTOs.

-

Service

Library

Version

Purpose

Library Link

Assignment Service

Course Service

0.1.0

Includes course service for DTOs.

-

User Service

0.1.0

Includes user service for DTOs.

-

Content Service

1.2.0

Includes content service for DTOs.

-

Service

Library

Version

Purpose

Library Link

Course Service, Reward Service, SkillLevel Service

Spring Boot Starter Webflux

Provides dependencies for building reactive web applications. Used for inter-service communication.

Spring Boot Starter Webflux

Notification Service

Spring Boot Starter Webflux

Reactive endpoints and live “notification added” stream; inter-service communication.

Spring Boot Starter Webflux

Service

Library

Version

Purpose

Library Link

Notification Service

Course Service

0.1.0

Includes course service for DTOs.

-

User Settings

0.1.0

Includes user settings service for DTOs.

-