Football Peek - Accès rapide aux résultats des plus grands championnats de football
Bonjour à tous,
Le Projet : Football Peek
Voila déjà presque deux ans que je travail sur ce projet. Il avait déjà fait l'objet d'un post sur ce site, mais comme depuis le projet a changé de nom, je préfère en créer un nouveau (ancien post pour les curieux).
Le projet est un site qui vous permet de consulter les résultats et les classements des 5 plus grands championnats ainsi que les 2 plus grandes compétitions de football (Premier League, Liga, Ligue 1, Serie A, Bundesliga, Champions League et Europa League).
Beaucoup d’autres sites proposent déjà ce service, mais la plupart de ces sites de sport fournissent avant tout des news. Lorsqu’il s’agit de consulter les résultats qui nous intéressent, il faut toujours naviguer dans plusieurs pages et personnellement ça me gonfle!
C’est donc sur ce point que Football Peek se différencie, par sa simplicité et sa rapidité d’accès aux données. En un clic vous pouvez accéder au championnat ou à la compétition qui vous intéresse.
Technologies :
Coté serveur, l’application est en JavaScript (NodeJS, Express et Ejs). Elle est hébergée sur Azure, ce qui est très pratique. J’ai branché Azure sur le projet Github et il me suffit de pousser mes modifications sur Github pour que Azure se charge automatiquement de déployer l’application.
Coté client, il n’y a pas grand-chose à dire, juste un petit peu de JavaScript. Pour le design, je me suis largement inspiré du Material Design de Google.
Pour ce qui est données, elles proviennent de worldfootball.net. Je fais ce que l’on appel du scraping. Il s’agit d’aller sur les pages et de récupérer de manière automatique les données. Ce n’est pas vraiment l’idéal mais à l’heure actuelle il est difficile de trouver ce genre de données gratuitement.
Progressive Web App :
Point important sur l'application, elle est se qu'on appelle une Progressive Web App. Ce terme a été inventé par Google et définit les applications qui respectent un certain nombre de règles :
- Chargement rapide
- Bonne utilisation du cache
- Https
- Responsive
- Installation possible sur les smartphones (hélas seulement suporté par Android à l'heure actuelle)
- Mode offline
- ...
Si vous voulez plus de detail, je vous conseil d'aller voir la checklist ici.
Liens utiles :
Voilà, j'espère que le projet va vous plaire !