Skip to content

devFancy/kotlin-springboot-multi-module

Repository files navigation

Kotlin SpringBoot Multi Module

This project provides a foundational structure for a Kotlin Spring Boot multi-module setup.

While it may not represent the most advanced architecture, it is a good starting point for projects where initial productivity is a priority.

As your software evolves and scales, the structure can and should adapt accordingly.

Project Information

Kotlin Version: 1.6.21

Spring Boot Version: 2.7.1

Database: H2 (example implementation)

Build Tool: Gradle

Module

Core-api

This is the only executable module in the project.

Handles API-related logic, including Controller classes.

Optimized for maximizing productivity during initial development stages.

domain

Manages domain models and business logic.

Provides the core functionality of the application with a clear separation of concerns.

storage

Submodule: This module is responsible for database-related operations and integrations.

storage:db-core

Example of integrating with an H2 database using Spring Data JPA.

Serves as a template for connecting to other database or storage systems.

Support

Submodule: This module contains auxiliary features such as logging and monitoring.

support:logging

Manages application logging.

Supports integration with various logging frameworks.

support:monitoring

Provides monitoring capabilities for services.

Ensures observability and performance tracking.

Reference

Here are the references and videos used when designing this project.


Special thanks to geminiKim for the original spring-boot-kotlin-template, which inspired the creation of this project.

If you'd like to check the latest versions of Kotlin, Spring Boot, or additional resources, I recommend visiting the spring-boot-kotlin-template repository.

About

Kotlin 1.6.21 & Spring Boot 2.7.1 & Multi Module

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages