An easy to use template to show how to develop a fully stand-alone modulare application by .net 8 Report Bug · Request Feature
Table of Contents
In contemporary software development, the operational dynamics of microservices are widely acknowledged. The notion of discrete executables is indeed captivating, yet realizing this abstraction often entails significant costs, whether temporal or financial, particularly for small to mid-sized projects and organizations.
This template facilitates the consolidation of separate modules into a single executable, while ensuring that this amalgamation remains true to the essence of modularity. The modular design is not merely theoretical; rather, it encompasses entirely autonomous modules that can be effortlessly removed from the solution by eliminating a single line of code, without engendering any semantic or logical inconsistencies.
By adopting this template, you will:
- Attain a coherent and multi-modular code structure.
- Embrace an Onion architecture within each module.
- Enjoy support for multiple database types.
- Practice the SOLID principles in a programmatic context.
- Conduct both unit and integration tests.
This project aims to simplify complex development concepts and make them accessible to everyone. Feel free to use it in your own projects and see the benefits firsthand!
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
This is an example of how to list things you need to use the software and how to install them.
- dotnet
Below is how you can run your project via docker compose.
- Clone the repo
git clone https://github.com/rezabashiri/modular-dotnet-core-boilerplate.git
- Navigate to src/server
dotnet build
-
dotnet run --project API/Bootstrapper.csproj
- Head to https://localhost:5001
Or use visual studio code, visual studio or rider to up and run project
- Add Docker support
- Add Blazer
- Add CQRS pattern
service to project
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE.txt
for more information.
Reza Bashiri - https://rezabashiri.com/ - rzbashiri@gmail.com - Linkedin
Project Link: https://github.com/rezabashiri/modular-dotnet-core-boilerplate