![League Of Legends](./doc/images/LoL_Banner.png) --- ## Répartition du Git La racine de notre git est composée de deux dossiers essentiels au projet: [**src**](src) : **Toute la partie code de l'application** (ne contient que le serveur TypeScript à l'heure actuelle sans l'implémentation du service de mail) [**doc**](doc) : **Documentation de l'application** vous pourez y retrouvez nos différents Schéma et divers documentation # Contexte   Ce projet consiste en une API web reliée à une base de donnée SQLite permettant d'avoir accès à différentes données relatives à League of Legends, par exemple les différents champions. Une application MAUI est également disponible.   ## Get Started - ### Prérequis Vous devez disposer d'un environnement Asp.net Core Entity Framework Core 2.+ configuré. - ### Installation Tout d'abord, si ce n'est pas fait, clonez le dépôt de la branche **master**, pour cela copiez le lien URL du dépôt git : ```git clone https://codefirst.iut.uca.fr/git/arthur.valin/League-of-Legends_Project.git```
![Comment cloner](doc/images/HowToClone.png)
- ### Comment lancer le projet ?   Ensuite, dans un terminal, assurez-vous que vous possédez les dépendances nécessaires, pour cela : ... 👉 [**Solution de l'application**](src//.sln) # Fonctionnement Le projet est entièrement développé en .NET, principalement .NET6 mis-à-part le client MAUI développé en .NET7. La partie base de données en gérée par l'ORM Entity Framework. L'API permet d'effectuer des opérations CRUD sur les données. **Schéma général du projet** --- ![Schéma d'architecture général du projet](./doc/images/LOLProjet_Diagram.png) **Schéma des différentes tables présentes au sein de la base de données** --- ![Modèle de données](./doc/images/MLD.png) - ### Comment ça marche au niveau du code ?
## Versionning Notre API REST est atteignable à ces deux URIs ci-dessous : * V1 - Ne dois pas être contactée et ne dispose pas de toutes les fonctionnalités - [V1](https://codefirst.iut.uca.fr/containers/arthurvalin-lolcontainer/api/v1/) * **V2** - C'est sur cette URI que il faut contacter l'API - [V2](https://codefirst.iut.uca.fr/containers/arthurvalin-lolcontainer/api/v2/)
## RoadMap **Récapitulatif de notre avancée sur le projet** : 👇
:information_source:  ... - [x]   ![Dto](./) - [x]   ![Mappeur](./) * Toutes les données qu'expose l'API sont des DTOs mappés par ces mapper [**Mappeur**](./). - [x]   ![Code de Retour](./) * Les réponse de l'API respectent les normes de code de retour. Vous pouvez retrouver ici un tableau les récapitulant [**Code de Retour**](./). - [x]   ![Manager EF](./) - [x]   ![Test Unitaires EF](./) - [x]   ![Test Unitaires Api](./) - [x]   ![Versioning](./) - [x]   ![Controller](./)  * Toutes les opérations crud on été réalisées avec l'inclusion de réponse HATEOS. - [x]   ![Liason Bdd](./) - [x]   ![Client Console](./) - [x]   ![Client MAUI http](./)  * Etant donné que l'on ne pouvait pas faire compiler le client sans les dépendances, nous avons fait le client en console vous pouvez le retrouvez ici - De plus étant donné que le model client est le même que ceului api, il était logique d'utiliser les même mappeur et les DTO c'est pour sa que le cient à la référence au Mappeur API et au DTO API [**Bibliothèque du Client http **](./). - [x]   ![Déploiment & Hébergement Docker](./drone/yml)
### Auteurs
* **Arthur Valin** - *arthur.valin@etu.uca.fr* - [arthur](https://codefirst.iut.uca.fr/git/arthur.valin) * **David d'Almeida** - *david.d_almeida@etu.uca.fr* - [david](https://codefirst.iut.uca.fr/git/david.d_almeida)
© PM2