Mercure – Real-time push avec Symfony
Par Quentin Bastos • publié le 10/06/2026 •
Mercure est un protocole open-source permettant d'envoyer des données du serveur vers le client en temps réel, sans polling et sans la complexité des WebSockets. Basé sur les Server-Sent Events (SSE), il s'intègre nativement avec Symfony 6.4 via le bundle officiel.
Le polling traditionnel, interroger le serveur toutes les N secondes, génère une charge inutile et une latence égale à l'intervalle d'appel. Mercure inverse le modèle : le serveur pousse les données dès qu'elles changent.
Cas d'usage : notifications temps réel, dashboards live, progression de jobs asynchrones (import CSV, export PDF), jeux et éditeurs collaboratifs.
Les Voters Symfony
Par Johan Labrosse • publié le 22/04/2026 •
Quand on développe une application Symfony, on arrive vite à un moment où ROLE_ADMIN ne suffit plus. Comment gérer le cas où seul l'auteur d'un article peut le modifier ? Ou qu'un contenu premium n'est accessible qu'aux abonnés actifs ? C'est exactement pour ça que Symfony propose les Voters.
Automatiser vos tests fonctionnels avec Mink et Symfony
Par Adrian Rabian • publié le 17/04/2026 •
Tester une application web, c'est bien. La tester comme le ferait un vrai utilisateur, c'est mieux. C'est exactement ce que permet Mink, une bibliothèque PHP qui s'impose comme la référence pour les tests d'acceptation dans l'écosystème Symfony.
Lors d'une présentation en interne, nous avons exploré en détail ce framework : son architecture, ses drivers (GoutteDriver, BrowserKitDriver, Selenium2, et ChromeDriver), son API, et les bonnes pratiques pour l'intégrer dans une pipeline CI/CD. L'objectif : écrire des tests end-to-end qui simulent de vraies interactions — clics, formulaires, navigations — sans dupliquer le code selon le navigateur utilisé.
Dans cet article, nous revenons sur les points clés de cette présentation pour vous donner une vision claire de ce qu'est Mink, comment le configurer avec ChromeDriver, et pourquoi il devrait faire partie de votre boîte à outils qualité.
Les Embeddables Doctrine — regrouper ses données sans multiplier les tables
Par Johan Labrosse • publié le 03/04/2026 •
Vous avez déjà dupliqué les mêmes champs (title, content, enabled...) dans plusieurs entités ? Les Embeddables sont la réponse de Doctrine à ce problème : un objet PHP réutilisable, stocké directement dans la même table que l'entité parente, sans jointure.