diff --git a/pom.xml b/pom.xml
index 2d8e109..149851f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -31,16 +31,17 @@
org.springframework.boot
spring-boot-starter-log4j2
+
+ org.springdoc
+ springdoc-openapi-starter-webmvc-ui
+ 2.4.0
+
+
org.springframework.boot
spring-boot-starter-test
test
-
- org.projectlombok
- lombok
- true
-
@@ -48,14 +49,6 @@
org.springframework.boot
spring-boot-maven-plugin
-
-
-
- org.project-lombok
- lombok
-
-
-
diff --git a/src/main/java/com/app/config/OpenAPIConfig.java b/src/main/java/com/app/config/OpenAPIConfig.java
new file mode 100644
index 0000000..4a91b0a
--- /dev/null
+++ b/src/main/java/com/app/config/OpenAPIConfig.java
@@ -0,0 +1,42 @@
+package com.app.config;
+
+import io.swagger.v3.oas.models.OpenAPI;
+import io.swagger.v3.oas.models.info.Contact;
+import io.swagger.v3.oas.models.info.Info;
+import io.swagger.v3.oas.models.info.License;
+import io.swagger.v3.oas.models.servers.Server;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import java.util.List;
+
+@Configuration
+public class OpenAPIConfig {
+
+ @Value("${app.openapi.endpoint}")
+ private String applicationEndpoint;
+
+ @Bean
+ public OpenAPI myOpenAPI() {
+ Server devServer = new Server();
+ devServer.setUrl(applicationEndpoint);
+ devServer.setDescription("Server Endpoint");
+
+ Contact contact = new Contact();
+ contact.setEmail("faiz.krm@gmail.com");
+ contact.setName("Faiz Akram");
+ contact.setUrl("https://www.faizkram.com");
+
+ License mitLicense = new License().name("Development License").url("https://www.faizkram.com");
+
+ Info info = new Info()
+ .title("Tutorial Management API")
+ .version("1.0")
+ .contact(contact)
+ .description("This API exposes endpoints to manage tutorials.").termsOfService("https://www.faizkram.com")
+ .license(mitLicense);
+
+ return new OpenAPI().info(info).servers(List.of(devServer));
+ }
+}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index a494062..0e56644 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -6,3 +6,9 @@ spring:
server:
port: 8080
+springdoc:
+ swagger-ui:
+ path: /swagger-ui.html
+app:
+ openapi:
+ endpoint: http://localhost:8080
\ No newline at end of file