LaPiloterieCoc

Le Projet !


Projet en cours de développement. Ce projet a été réalisé pour apprendre Vue.js, avec l'utilisation d'une API Laravel elle même basé sur l'utilisation de l'API du jeu Clash of Clans. L'objectif du projet est de visualisé les statistiques et l'activité des membres de nos clans.

Logo du projet LaPiloterieCoc

Technologies Utilisées

VueJS

VueJS

Laravel

Laravel

Exigences Fonctionnels

Sélection du clan

L'utilisateur doit pouvoir sélectionner le clan à analysée.

Affichage des informations générales du clan

Pour un clan sélectionné, l'application doit afficher les informations générales telles que le nom, le tag, le niveau, la description, le nombre de membres, le score de clan, les points de guerre, la fréquence des guerres, et l'emblème.

Affichage des membres du clan

Pour un clan sélectionné, l'application doit afficher la liste des membres avec des informations de base (nom, niveau d'HDV, rôle dans le clan, ligue).

Sélection d'un membre

L'utilisateur doit pouvoir sélectionner un membre de la liste pour afficher ses informations détaillées.

Affichage des informations et statistiques d'un membre

Pour un membre sélectionné, l'application doit afficher des informations détaillées telles que le niveau d'expérience, le nombre de trophées, le meilleur nombre de trophées, les dons totaux, les dons reçus, les attaques gagnées, les défenses gagnées, le niveau des héros et des troupes.

Affichage des dernières guerres de clans

Pour un clan sélectionné, l'application doit afficher un historique des dernières guerres de clans (informations de base comme la date, le résultat).

Affichage des informations sur la guerre de clans en cours

Si le clan est en guerre, l'application doit afficher les informations de la guerre en cours (adversaire, date de fin, état).

Affichage des dernières Ligues de Guerres de Clans (LDC)

Pour un clan sélectionné, l'application doit afficher un historique des dernières Ligues de Guerres de Clans (informations de base comme la saison, le résultat).

Affichage des informations sur la LDC en cours

Si le clan participe à une LDC, l'application doit afficher les informations de la saison en cours (groupe, adversaires).

Affichage des derniers Raids de Capital

Pour un clan sélectionné, l'application doit afficher les informations sur les derniers Raids de Capital (districts attaqués, butin gagné).

Specifications Techniques

API Clash of Clans

L'application utilisera l'API officielle de Clash of Clans pour récupérer les données des clans, des joueurs, des guerres, des LDC et des raids de capital.

API Personnalisée (Backend)

Un backend sera développé pour interagir avec l'API de Clash of Clans, et utilisé le

Langage de programmation backend

Le backend sera développé en PHP avec le framework Laravel.

Base de données

Une base de données (MariaDB) sera utilisée par le backend pour gerer les statistique utilisateur.

Langage de programmation frontend

Le frontend sera développé en JavaScript en utilisant le framework Vue.js.

Framework CSS

Le style de l'interface sera géré avec Tailwind CSS.

Gestion des requêtes API (Frontend)

Utilisation de librairies (Axios) pour effectuer des requêtes HTTP vers l'API backend.

Captures d'écran

Acceuil Membre Wars Wars détaille Raids

Problèmes rencontrés

Limitations de l'API Clash of Clans pour l'historique des guerres

L'API officielle de Clash of Clans ne fournit pas un historique complet et illimité des guerres passées. Pour pallier cette limitation et offrir une fonctionnalité d'historique des guerres plus riche, il sera nécessaire de développer une API externe et une base de données dédiée pour collecter et stocker ces données au fil du temps.

Performances des requêtes API

Les requêtes vers l'API de Clash of Clans, et potentiellement vers l'API externe pour l'historique des guerres, peuvent être longues (asynchrones). L'optimisation de ces requêtes au niveau du backend (gestion des connexions, parallélisation) et du frontend (gestion de l'état de chargement, affichage progressif) sera cruciale pour garantir une expérience utilisateur fluide.

Gestion des erreurs de l'API

L'application doit être capable de gérer les erreurs potentielles renvoyées par l'API de Clash of Clans (par exemple, clan ou joueur non trouvé, limitations de taux d'appels). Des mécanismes de gestion des erreurs robustes devront être mis en place tant au niveau du backend (journalisation, tentatives de nouvelles requêtes) qu'au niveau du frontend (affichage de messages d'erreur clairs à l'utilisateur).

Sécurité des clés API

La clé API fournie par Supercell pour accéder à l'API de Clash of Clans est sensible et doit être gérée de manière sécurisée au niveau du backend. Il faudra éviter de l'exposer côté frontend et mettre en place des mesures de sécurité appropriées pour prévenir tout accès non autorisé.

Limitations de l'API pour les informations en temps réel

L'API de Clash of Clans peut ne pas fournir certaines informations en temps réel (par exemple, le déroulement exact d'une attaque en guerre). Il faudra tenir compte de ces limitations lors de la conception des fonctionnalités et communiquer clairement aux utilisateurs les éventuelles latences ou le manque d'informations en direct.

Évolution de l'API Clash of Clans

L'API de Clash of Clans est susceptible d'évoluer (ajout de nouvelles fonctionnalités, modifications des formats de données, fin de certaines fonctionnalités). Il faudra prévoir une certaine flexibilité dans le code pour pouvoir s'adapter aux changements futurs de l'API.