cyrilgourgouillon / pokestats

Pokestats - Pokemon Analysis and Statistics Tool. Web Semantic Project from my IT Engineering School.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Information] Architecture Globale

nathangobinet opened this issue · comments

Architecture Globale

L'architecture de l'application est divisée en deux parties :

  • L'API C# : Elle a pour but de réaliser l'ensemble les requêtes SPARQL ainsi que de stocker les données.
  • Le front HTML/CS/JS : Il est censé échanger les informations entre l'API et l'utilisateur et les afficher de manière élégante.

1. L'API C#

Les fonctionnalités de l'API sont les suivantes :

  • Renvoyer l'ensemble des paramètres ainsi que leurs valeurs possibles.
    _ Ces informations devront être stocker dans une base de données car les requêtes mettent un certain temps à s’exécuter._
  • A partir des informations que l'utilisateur à saisis, exécuter la requête correspondante et renvoyer les informations.

2. Le front HTML/CS/JS

Le front sera composé d'une seul page Web.
Dans un premier temps un page d’accueil/bienvenue sera affichée. Grâce à un bouton l'utilisateur accédera aux fonctionnalités Une animation fera la transition entre les deux pages.

Les fonctionnalités du front sont les suivantes :

  • Accueillir le visiteur grâce à la page d’accueil.
  • Obtenir les paramètres de l'API et les afficher pour le filtrage (partie de gauche du mockup).
  • Envoyer le filtrage à l'API et recevoir les données.
  • Afficher les données reçu dans un premier temps sur le tableau.
    Librairie agrid à prendre en main.
  • Laisser la possibilités à l'utilisateur de créer ces graphiques avec les données reçu.
    Librairie chart.js à prendre en main.

Mise à jour

L'architecture de l'application est la suivante 👍

├───Controllers
├───Models
├───src
│   └───index.js
└───wwwroot
    ├───css
    ├───images
    └───js
├───Program.cs
├───Startup.cs

L'architecture est bien divisée en deux parties : Le front et le back (api).

  • L'api C# est contenu dans les dossiers Controllers et Models, ainsi que dans les fichiers Program.cs et Startup.cs qui permettent d'initialiser le serveur et les contrôleurs d'écoute.
  • Le front est compilé grâce à webpack, il se décompose donc en deux parties, les fichiers statiques (compilés) et les fichiers sources (non compilés). Les fichiers sources se trouve dans le dossier src et les fichiers statiques dans le dossier wwwroot.

Le serveur C#, configuré dans Startup.cs est paramétré pour utiliser des fichiers statiques et utiliser par défaut (si aucun chemin d'url n'est spécifié) le fichier index.html.
Il est également configurés pour avoir accès aux fichiers du dossier nodes_modules comprenant toutes les librairies utilisés. Ces librairies sont géré par npm.