Construire un back-office DSFR avec Symfony
Un back-office DSFR n'est pas seulement une collection de pages. Il doit gérer des listes, filtres, formulaires, actions, confirmations, navigation et états métier.
Les composants les plus fréquents sont :
dsfr:container,dsfr:grid:row,dsfr:grid:colpour les layouts ;dsfr:nav,dsfr:sidemenu,dsfr:breadcrumbpour la navigation ;dsfr:tablepour les listes ;dsfr:modalpour les confirmations ;dsfr:alert,dsfr:badge,dsfr:noticepour le feedback ;- les types Symfony DSFR pour les formulaires.
Sans socle commun, chaque développeur peut produire une variante différente. Cela crée de la dette et complique la recette.
Approche recommandée
Commencez par un layout back-office partagé : en-tête, liens d'évitement, navigation, conteneur principal, zone de messages et pied de page. Ajoutez ensuite des pages types : liste, détail, formulaire, dashboard.
DSFR Bundle permet de composer ces pages en Twig sans recopier les templates internes du bundle. Les composants restent lisibles et réutilisables.
Pages à lire
FAQ
Quels composants DSFR sont les plus utiles dans un back-office ?
Les composants les plus structurants sont la grille, le menu latéral, la navigation principale, les tableaux, les formulaires, les badges, les alertes et les modales de confirmation.
Faut-il commencer par les pages ou par les composants ?
Commencez par les layouts et les conventions de navigation. Les composants métier deviennent ensuite plus simples à assembler, tester et maintenir sur les listes, formulaires et écrans de détail.