Mise en ligne : Novembre 2021

Notions abordées : Symfony, React, traduction, gestion de contenu

https://jerome-segal.eu/ est le projet un de mes projets personnels les plus complets de mes débuts.

La demande est venue d’un conférencier universitaire que je connaissais par le fait que l’on milite pour la cause animale ensemble. Il avait besoin d’une plateforme pour recenser toutes ses apparitions à la TV, à la radio, dans la presse et autres médias.

Aussi, du fait qu’il habite en Autriche et que son audience soit internationale, il fallait que le site soit trilingue (Français, Allemand et Anglais).

Est donc né ce site entièrement administrable depuis un backoffice modulable qui lui permet maintenant de partager plus facilement ses apparitions, ses livres, et tout le reste.

js-1.png

Et côté technique ?

Le site a été créé sous Symfony 5.3 et React 16.1x.

Sa conceptualisation a été faite de manière agile avec des feedbacks très réguliers avec M. Segal, dont la maquette Figma se trouve ici :

Jérôme Segal

Si la structure du site est relativement simple, il y a eu des challenges importants à dépasser pour venir à cette version du site.

Je dirais que les trois principaux ont été la traduction des éléments statiques, l’optimisation en terme de rapidité et la manière dont est administrable le backoffice.

Je n’avais auparavant jamais touché au composant de traduction de Symfony et m’y suis formé sur le tas. En collaboration avec mon client, nous avons donc défini pour les ressources non éditables par son administrateur de quelle façon devaient être traduits les blocs de textes. Avant cette étape, il a fallu faire en sorte de récupérer la locale par défaut de sorte à ce que l’utilisateur arrive directement sur sa langue natale si elle est supportée. C’est donc géré au niveau du navigateur internet. Il est configuré en français ? Le site apparaîtra par défaut en français. Idem pour l’allemand. Et pour tous les autres pays, on affiche par défaut la version anglaise. Evidemment le switch des langues est instantané et prévu depuis la barre de navigation.