Le Rugbynistère App v2
Refonte complète de l'application mobile du Rugbynistère : abandon d'Ionic pour React Native, nouvelle API et design repensé.
Le Rugbynistère est un média rugby indépendant créé en 2008, dont j'avais recodé entièrement le site en 2016 avant d'en démarrer la première application mobile, sous Ionic Framework, en décembre de la même année. Durant l'été 2019, déçus par les performances d'Ionic, nous avons pris la décision de repartir de zéro. Cette deuxième application n'est pas une mise à jour de la première : c'est une base de code neuve, en React Native, adossée à la nouvelle API mise en place lors de la refonte technique du site en 2018. Ce qu'elle apporte est une remise à niveau des performances obtenue des deux côtés à la fois, un serveur déjà repensé pour la charge et une couche mobile capable d'en tirer parti.
React Native, TypeScript et une API déjà en place
React Native, porté par une forte communauté, s'est logiquement imposé, et c'est à cette occasion que je m'y suis formé. Le passage n'a rien eu d'automatique : le JSX et l'approche de React Native n'ont pas grand-chose à voir avec Ionic, et il a fallu quelques semaines de formation. La différence est aussi de nature. Un framework hybride embarque une interface web dans une coque native, quand React Native décrit l'interface en JavaScript mais la fait rendre par les composants natifs de la plateforme. C'est cet écart que l'on va chercher lorsque l'on quitte l'hybride pour des raisons de fluidité.
TypeScript figure dans les technologies du projet. C'est un langage qui ajoute un typage statique à JavaScript : la forme des données est déclarée, et les erreurs de structure se voient à la compilation plutôt qu'à l'exécution, sur le téléphone d'un lecteur. Sur une application qui consomme en permanence des objets venus du serveur, articles, matchs, classements, ce contrat de forme est ce qui rend les remaniements soutenables.
Côté serveur, on reste sur Laravel et sur une API REST : des ressources adressées par des URL, des verbes HTTP, des réponses JSON. Une application de ce type n'embarque pas le contenu, elle interroge ce contrat et ignore la manière dont les données sont assemblées derrière. C'est ce qui permet à un même socle de servir le site et l'application, et c'est aussi ce qui fait que le travail mené sur l'API en 2018, notamment la mise en cache des données au format JSON en base, profite directement à l'application sans qu'elle ait à s'en occuper.
La construction s'est faite en deux temps. J'ai d'abord développé une première version concentrée sur le coeur de métier, l'actualité rugby, puis enrichi l'application au fil des retours, notamment après l'optimisation des publicités avec la régie. L'ensemble a été mené sur environ huit mois.
Ce que l'application propose
- Articles, programme TV, derniers résultats, commentaires et notifications
- Pages de matchs et statistiques, fiches compétitions et fiches clubs
- Espace membre enrichi, avec blocage des utilisateurs indésirables
- Publicité retirée pour les abonnés, comme le site le faisait déjà pour ses membres premium
Elle prend la suite de l'application Ionic démarrée en décembre 2016.
Besoin de créer un site internet à Perpignan ?
Comme pour ce projet, créons ensemble un site unique, performant et à votre image.