diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..7a214d7 --- /dev/null +++ b/readme.md @@ -0,0 +1,51 @@ +# Ticketing App Incremental Architecture + +## Description +Ce projet a pour objectif de mettre en pratique les principes de la Clean Architecture ainsi que le développement d'une API avec .NET. +L'approche adoptée est incrémentale : chaque commit in*roduit un concept ou une brique fonctionnelle clairement identifiée. + +## Fonctionnalités +- Création de tickets +- Mise à jour de tickets +- Fermeture de tickets +- Persistance des données + +## Stack technique +- .NET (API) +- Entity Framework Core +- PostgreSQL +- Dependency Injection + +## Architecture +Le projet est structuré en couches selon les principes de la Clean Architecture: +- Domain : Contient la logique métier (entités, rèle métier) +- Application : Contient les cas d'usage +- Infrastructure : Gère l'accès aux données (EF Core, PostgreSQL) +- API : Expose les endpoints et gère les requêtes HTTP + +## Concepts appliqués +- Dependency Injection (réduction du couplage) +- Séparation des responsabilités +- DTO (Data transfer Objects) + +## Installation + +Mettre à jour la chaîne de connexion dans : +`appsettings.Developpement.json` + +Puis exécuter : + +``` +dotnet restore +dotnet build + +dotnet ef database update +dotnet run +``` + +## Améliorations possible (WIP) +- Ajout de tests unitaire complets +- Cicle de vie des ticket approfondit +- Documentation enrichie +- Dockerisation +- CI/CD \ No newline at end of file