Skip to content

Web Application ASP.NET 8 using Clean Architecture, DDD, CQRS, Event Sourcing and a lot of good practices

License

Notifications You must be signed in to change notification settings

EduardoPires/EquinoxProject

Repository files navigation

Equinox Project

What is the Equinox Project?

The Equinox Project is a open-source project written in .NET Core

The goal of this project is implement the most common used technologies and share with the technical community the best way to develop great applications with .NET

Build Status License Issues open

Give a Star! ⭐

If you liked the project or if Equinox helped you, please give a star ;)

Want to learn everything? 🎓

Check my online courses at desenvolvedor.io

How to use:

  • You will need the latest Visual Studio 2022 and the latest .NET Core SDK.
  • Please check if you have installed the same runtime version (SDK) described in global.json
  • The latest SDK and tools can be downloaded from https://dot.net/core.

Also you can run the Equinox Project in Visual Studio Code (Windows, Linux or MacOS).

To know more about how to setup your enviroment visit the Microsoft .NET Download Guide

Technologies implemented:

  • ASP.NET 8.0
  • ASP.NET MVC Core
  • ASP.NET WebApi Core with JWT Bearer Authentication
  • ASP.NET Identity Core
  • Entity Framework Core 8.0
  • .NET Core Native DI
  • AutoMapper
  • FluentValidator
  • MediatR
  • Swagger UI with JWT support
  • .NET DevPack

Architecture:

  • Full architecture with responsibility separation concerns, SOLID and Clean Code
  • Domain Driven Design (Layers and Domain Model Pattern)
  • Domain Events
  • Domain Notification
  • Domain Validations
  • CQRS (Imediate Consistency)
  • Event Sourcing
  • Unit of Work
  • Repository

News

v1.9 - 06/31/2024

  • Migrated for .NET 8.0
  • Full refactoring of Web and Api configuration
  • Now all ASP.NET Identity configurations are inside the project, without external dependencies
  • All dependencies is up to date

v1.8 - 03/22/2022

  • Migrated for .NET 6.0
  • All dependencies is up to date

v1.7 - 04/06/2021

  • Migrated for .NET 5.0
  • All dependencies is up to date

v1.6 - 06/09/2020

  • Full Refactoring (consistency, events, validation, identity)
  • Added NetDevPack and saving a hundreds of code lines
  • All dependencies is up to date

v1.5 - 01/22/2020

  • Migrated for .NET Core 3.1.1
  • All dependencies is up to date
  • Added JWT (Bearer) authentication for WebAPI
  • Added JWT support in Swagger

v1.4 - 02/14/2019

  • Migrated for .NET Core 2.2.1
  • All dependencies is up to date
  • Improvements for last version of MediatR (Notifications and Request)

v1.3 - 05/22/2018

  • Migrated for .NET Core 2.1.2
  • All dependencies is up to date
  • Improvements in Automapper Setup
  • Improvements for last version of MediatR (Notifications and Request)
  • Code improvements in general

v1.2 - 08/15/2017

  • Migrated for .NET Core 2.0 and ASP.NET Core 2.0
  • Adaptations for the new Identity Authentication Model

v1.1 - 08/09/2017

  • Adding WebAPI service exposing the application features
  • Adding Swagger UI for better viewing and testing
  • Adding MediatR for Memory Bus Messaging

Disclaimer:

  • NOT intended to be a definitive solution
  • Beware to use in production way
  • Maybe you don't need a lot of implementations that is included, try avoid the over engineering

Pull-Requests

Make a contact! Don't submit PRs for extra features, all the new features are planned

Why Equinox?

The Equinox is an astronomical event in which the plane of Earth's equator passes through the center of the Sun, which occurs twice each year, around 20 March and 23 September. Wikipedia

Equinox is also a series of publications (subtitle: "The Review of Scientific Illuminism") in book form that serves as the official organ of the A∴A∴, a magical order founded by Aleister Crowley :) Wikipedia

We are Online:

See the project running on Azure

About:

The Equinox Project was developed by Eduardo Pires under the MIT license.