#mobile #LMS #ETL #optimisation #UX #UI #responsive
Stack
- Prismic LMS + API Rest
- Bubble
- ETL : Pipedream + NodeJS
Contexte
Agroleague développe et distribue une application mobile destinée à fournir des contenus de formation aux agriculteurs et agronomes de la région Nord.
Problématique
La consommation des contenus LMS depuis Bubble est terriblement longue, qui plus dans des zones rurales à bande passante limitée.
De plus l'extracteur de donnés natif à Bubble (API connector) est reputé plutôt lent.
L'expérience eLearning s'en trouve de plus en plus dégradée, avec un risque de churn de la part des clients apprenant. Et donc un risque d'impact business assez critique.
Solution proposée :
Une scission des données :
- isolé dans une DB de cache dans Bubble les documents LMS long à charger auprès de Prismic.
- récupéré assets (videos, images, audio, pdf) directemnt auprès du CDN adossé à Prismic
- préservé les liens media dans les documents.
Et puisque les documents LMS sont repris dans un cache local, il fut de rigueur de mettre en place un watcher de documents chez Prismic, capable de déclencher un webhook auprès de Bubble dès qu'une modification est repérée sur un document LMS, afin de la propager dans le document coté Bubble.
Travaux réalisés :
- Optimisation base de données
- Séparation des textes et asset sur CDN (edge delivery, caching, status)
- Dénormalisation des contenus JSON "à la Prismic" vers du HTLML sytandar
- Réfection complète des branchement frontend <-> backend