Good Day est une application éditée par MARVEY, société de production de films et de programmes de télévision. Elle propose chaque jour six rubriques : Good News, Bien Dit, La Photo, La Surprise, Green Deal et Good Tune. L'écran d'accueil les présente en grille, chacune avec sa couleur et son cadrage, sous la date du jour. On ouvre une tuile, on lit ou on écoute, on revient.
En images
Le projet en détail
L'application est écrite avec Ionic et Angular 8. Les médias sont embarqués dans le paquet, pistes audio comprises : soixante-dix-sept mégaoctets qui permettent à l'application de fonctionner sans connexion, ce qui compte pour un contenu qu'on consulte dans les transports. Les notifications quotidiennes passaient par OneSignal.
Côté serveur, une API Django modélise le domaine avec justesse : un objet pour le jour, un pour chaque contenu, un pour le type de contenu, et une charte visuelle attachée au type. C'est ce qui permet d'ajouter une rubrique sans toucher à l'application.
Quarante-sept commits en tout, en février 2020 : six pour l'application, quarante et un pour l'API. L'application a été écrite d'un trait. Reconstruite aujourd'hui avec le CLI Angular de son époque, elle s'ouvre et affiche la date du jour, six ans après.
Ce dernier point mérite qu'on s'y arrête, parce qu'il n'allait pas de soi. Une application mobile de 2020 dépend d'un outillage qui vieillit vite, et la plupart refusent de se reconstruire cinq ans plus tard. Celle-ci repart sans qu'une ligne ait été modifiée, parce que ses dépendances étaient verrouillées à la version près au moment de la livraison. C'est la différence entre un projet qu'on peut reprendre et un projet qu'il faut réécrire.
