Chambre des Représentants
Développement Drupal sur le site public de la Chambre des Représentants, chambre basse du Parlement marocain — un portail institutionnel multilingue qui publie les travaux parlementaires.
- Refonte et migration de Drupal 7 vers Drupal 10
- Portail public d'un parlement de 395 sièges
- Arabe, français, anglais, espagnol et amazighe
- Données parlementaires structurées — membres, commissions, séances
Le site
La Chambre des Représentants est la chambre basse du Parlement marocain : 395 membres élus au suffrage universel direct. Son portail public est l'endroit où l'institution publie ses travaux — annuaire des députés, commissions permanentes, agenda parlementaire, activité législative et actualités.
J'ai travaillé sur ce site au sein de l'équipe de FORNET.
Ce qui distingue un portail parlementaire
L'essentiel de la difficulté n'est pas technique. Elle vient de ce qu'est l'institution.
Le modèle de contenu reflète une institution, pas un site web. Les députés appartiennent à des groupes et à des commissions ; les commissions tiennent des séances ; les séances produisent des documents ; les documents renvoient à des textes législatifs. C'est un graphe d'entités et de relations, et s'y tromper signifie que les contributeurs se battent contre le système tous les jours. Modéliser cela correctement dans Drupal — types d'entités, champs et références entre eux — représente l'essentiel du travail.
Plusieurs langues, deux hors alphabet latin. Arabe, français, anglais, espagnol et amazighe. L'arabe n'est pas une arrière-pensée : c'est une langue officielle, donc la mise en page de droite à gauche est un cas de premier plan et non un correctif de feuille de style. L'amazighe s'écrit en tifinagh, ce qui demande sa propre gestion de polices. Derrière tout cela, un circuit de traduction que l'équipe de communication doit pouvoir réellement utiliser.
Publier est un processus qui engage une autorité. Un parlement ne publie pas parce qu'une personne clique sur « enregistrer ». Les états de modération et les droits par rôle doivent refléter qui est réellement habilité à approuver quoi.
Le public inclut des personnes qui en dépendent. Journalistes, chercheurs, citoyens qui cherchent leur député. L'accessibilité et une performance prévisible sont des exigences, pas du vernis.
Où est passé mon temps
- Modélisation du contenu : membres, commissions, séances et contenus législatifs
- Configuration multilingue du contenu, de l'interface et de la configuration
- Prise en charge du droite-à-gauche dans la couche de thème
- Circuits de validation éditoriale, états de modération et droits par rôle
- Modules sur mesure pour les besoins non couverts par les modules contribués
- Performance : stratégie de cache et optimisation des requêtes sur les listings
Note
Mission réalisée en agence chez FORNET, au sein d'une équipe. Cette page décrit les problèmes qu'a posés le projet et les parties sur lesquelles j'ai travaillé — ni revendication de paternité exclusive, ni information sur les systèmes internes ou l'infrastructure du client.