GithubHelp home page GithubHelp logo

panosru / cleandddarchitecture Goto Github PK

View Code? Open in Web Editor NEW
8.0 3.0 1.0 2.24 MB

Clean DDD Architecture Solution Template for .NET 8

License: MIT License

C# 81.05% HTML 2.01% CSS 13.14% JavaScript 0.06% Dockerfile 0.67% Makefile 3.08%

cleandddarchitecture's Introduction

CleanDDDArchitecture Template

The CleanDDDArchitecture Template is a comprehensive template project that utilises the Aviant Library features to help you quickly get started with building clean, scalable, and maintainable applications following the principles of Vertical Sliced Clean Code Architecture. This template includes pre-configured Docker services for various dependencies and demonstrates best practices for DDD (Domain-Driven Design) and Event Sourcing.

Features

  • Vertical Sliced Clean Code Architecture: The template showcases a well-structured architecture that separates concerns vertically, allowing you to build maintainable applications.

  • Docker Services: Easily spin up required services like Postgres, Kowl, Loki, EventStore, Kafka, and Redis using Docker containers, providing a ready-to-use development environment.

  • Multiple Example Applications:

    • WebApp with Razor Pages: An example web application demonstrating how to create a user interface using Razor Pages.
    • REST API: A RESTful API example showcasing API design and best practices.
  • Four Domains:

    • Account: Demonstrates the use of Event Sourcing and Identity, showing how to manage user accounts and identities.
    • Todo: Illustrates the concept of subdomains, providing a structured approach to managing tasks or to-do lists.
    • Weather: A simple domain, demonstrating the fundamental principles of DDD in a straightforward application context.
    • Shared: Provides cross-cutting concerns and utilities that can be shared across various domains.

Getting Started

  1. Clone the Repository: Clone this repository to your local development environment.

  2. Start Docker Services: Run Docker to start the required services using the provided Docker Compose file.

    docker-compose up
  3. Explore Example Applications: Dive into the example applications within the template to understand how to leverage the Aviant Library and implement Clean Code Architecture.

  4. Customize and Extend: Use this template as a starting point for your project. Customize and extend the domains and applications to fit your specific requirements.

Contribution

I welcome contributions from the community to enhance and improve the CleanDDDArchitecture Template. If you have ideas, bug fixes, or new features to add, please submit a pull request. Contributions related to documentation updates, code refactoring, and unit tests are highly encouraged.

Support and Contact

For questions, feedback, or collaboration inquiries related to the CleanDDDArchitecture Template or the Aviant Library, please reach out via:

License

This template is open-source and released under the MIT License. Please check the LICENSE file for more details.

cleandddarchitecture's People

Contributors

panosru avatar jasontaylordev avatar jasongt avatar francischung avatar marcosmeli avatar mhornbacher avatar dependabot[bot] avatar ckoenig95 avatar cryoland avatar engineers-tools avatar mfehlhaber avatar moientajik avatar nicklashugoy avatar parc1val avatar

Stargazers

Addel avatar Nathaniel Slayton avatar Mahmoud Kandeel avatar Gurdev avatar hamza bakhtari avatar Arsenio Inojosa avatar Rajat Kumar Sangal avatar Bashar Ovi avatar

Watchers

 avatar James Cloos avatar Rajat Kumar Sangal avatar

Forkers

designredevops

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.