Skip to content

toolkitcore/Modulith

 
 

Repository files navigation

Modulith

Modulith is a simple modular monolith architecture for building scalable and maintainable applications with .NET Core. It is a set of guidelines and best practices that help you to structure your application in a way that makes it easier to manage and scale as it grows. It is based on the principles of Domain-Driven Design (DDD) and Clean Architecture.

Architecture

The architecture of Modulith is based on the principles of Domain-Driven Design (DDD) and Clean Architecture. It is a modular monolith architecture that allows you to break down your application into smaller, more manageable modules. Each module is a self-contained unit of functionality that can be developed, tested, and deployed independently of the other modules.

Here is an overview of the architecture of Modulith:

Architecture

Modules

  • Product: Contains the domain logic for managing products.
  • Order: Contains the domain logic for managing orders.
  • User: Contains the domain logic for managing users.
  • Basket: Contains the domain logic for managing baskets.

Getting Started

Prerequisites

Installation

  1. Clone the repository and change the directory:
git clone https://github.com/foxminchan/Modulith
cd Modulith
  1. Start the infrastructure services using Docker Compose:
docker-compose -f ./docker-compose.yml ./docker-compose.o11y.yml up -d
  1. Run the application:
dotnet run --project src/Modulith.WebApi/Modulith.WebApi.csproj

License

This project is licensed under the MIT License - see the LICENSE file for details.

References

About

A simple modular monolith project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%