↓ Aller au contenu
  1. Actualités/

Sylius Party 2025 – Toulouse

·1003 mots·5 mins
Le 19 juin, nous avons participé à la Sylius Party organisée à Toulouse par Emagma. Une journée dense, riche en retours d’expérience, annonces techniques et rencontres autour de l’écosystème Sylius. L’événement s’adressait autant aux développeurs confirmés qu’aux curieux souhaitant approfondir leurs connaissances sur Sylius, ses plugins, ses performances ou encore ses usages détournés hors e-commerce.

Antoine Bluchet — Sylius 2.0 & API Platform
#

API Platform FrankenPHP Sylius 2.0

Antoine Bluchet nous livre un retour d’expérience d’intégration d’API Platform dans Sylius, avec un regard extérieur mais éclairé : il est mainteneur d’API Platform et release manager, bien qu’il ne soit pas un spécialiste de Sylius.

Points clés abordés
#

  • Intégration de JSON-LD dans l’API Sylius : bien que non activée par défaut, l’activation est triviale grâce à API Platform. Toutefois, les résultats ne sont pas conformes à 100 % au standard Schema.org — Antoine montre comment corriger facilement ces écarts.
  • Utilisation des Resource Mutators, une nouveauté d’API Platform 3.4, pour ajuster dynamiquement les ressources.
  • Performance avec FrankenPHP : un serveur web embarquant PHP, qui, en mode worker, réduit considérablement le temps d’exécution en réutilisant un environnement PHP pré-initialisé.
  • Découverte du composant JsonStreamer de Symfony 7.3 : ce composant permet une sérialisation JSON plus performante, utile notamment pour les réponses volumineuses. Encore en phase d’intégration dans API Platform et Sylius.

Joachim Løvgaard — Creating Sylius Plugins
#

Architecture Plugins Qualité de code

Joachim Løvgaard partage de précieuses bonnes pratiques pour créer des plugins Sylius robustes et maintenables.

Recommandations principales
#

  • Respecter semver.
  • Réduire la complexité d’installation.
  • Fournir des valeurs par défaut cohérentes.
  • Créer ses propres entités plutôt que de surcharger celles de Sylius.
  • Utiliser des DTO/VO pour limiter les ruptures de compatibilité.
  • Préférer les providers aux repositories pour éviter les conflits.
  • Faciliter le hook via DataMappers.
  • Intégrer des tests fonctionnels et d’intégration.
  • Faire du mutation testing.
  • Utiliser PHPStan au niveau le plus strict et enrichir les PHPDoc.
  • Intégrer une CI (GitHub Actions ou autre).
  • Utiliser le squelette officiel de plugin Sylius.
  • Et surtout : adopter les outils d’IA comme JetBrains AI Assistant (Junie), et développer en open source pour attirer des contributeurs.

Piotr Szymanski — The Sylius 2.0 Plugin Upgrade Journey
#

Migration Sylius 2.0 Symfony 7.3

Piotr Szymanski nous présente les coulisses de la migration d’un plugin vers Sylius 2.0.

Il commence par nous faire une rétrospective sur l’évolution de Sylius, avec sa version 1 dans les années 2023 jusqu’à la sortie officielle de la version 2.0 fin 2024. Il en profite également pour présenter la nouvelle équipe derrière Sylius : une équipe plus conséquente, structurée autour de pôles différents (front-end, back-end, QA, UX design, etc.). Le projet Sylius a bien grandi. Bien entendu, il fait aussi un focus sur les Key Contributors — coucou à Loïc, Estelle, Valentin et Florian.

Nouveautés apportées par Sylius 2.0
#

  • Passage à API Platform v4.
  • Introduction des Twig Hooks.
  • Remplacement de Winzou par Symfony Workflow.
  • Migration de Semantic UI à Bootstrap.
  • Suppression de jQuery.
  • Refactoring massif des templates Twig.

Étapes de migration
#

  1. 1

    Dépendances

    Mise à jour des dépendances.
  2. 2

    Base de données & templates

    Migration de la base de données et des templates.
  3. 3

    JS/CSS

    Refonte JS/CSS avec Webpack Encore.
  4. 4

    Tests

    Réécriture de tests (abandon de PhpSpec au profit de PHPUnit et Behat).
  5. 5

    Paiement

    Intégration de la nouvelle API de paiement (basée sur Payment Request, plus sur Payum).
  6. 6

    Tests de plugin

    Utilisation de TestApplication, une mini-app Sylius pour tester les plugins plus efficacement.
Bonus : nouveautés Sylius 2.1 annoncées
  • Symfony 7.3, PHP 8.4, Node.js 24.
  • Refonte visuelle de l’admin.
  • Accessibilité (WCAG).
  • Migration des tests vers Unit testing natif Symfony.

Retrouvez notre article sur le sujet Migration vers Sylius 2.1 : un enjeu technique et stratégique majeur.


Grégoire Pineau — Asynchrone avec Messenger et Mercure
#

Symfony Messenger Mercure Temps Réel

Grégoire Pineau vulgarise l’asynchronisme avec Symfony Messenger et montre comment Mercure permet de notifier un utilisateur en temps réel.

Cas d’usage : upload de CSV
#

  • En synchrone, le serveur est bloqué pendant le traitement.
  • En asynchrone, un message est placé dans une queue, traité par un worker.
  • Messenger facilite cette mise en œuvre (commande make:message, configuration des transports, messenger:consume…).

Retours d’expérience
#

  • Ne jamais envoyer un fichier dans un message. Utiliser un pointeur (path).
  • Pour le feedback utilisateur : Mercure, basé sur SSE (Server-Sent Events), plus simple et sécurisé que WebSockets.
  • Publication d’événements côté back, réception native dans le navigateur.
  • Pour la UI : il recommande Symfony UX/Turbo pour actualiser dynamiquement les composants.

Estelle Gaits — Pole Position on the Grid
#

Sylius Resource Bundle Sylius Grid Bundle Sylius Stack Live Components

Estelle Gaits propose une superbe métaphore entre Sylius Stack et la F1, pour illustrer la puissance du couple Resource Bundle + Grid Bundle.

Objectif : créer un admin rapidement
#

  • Resource Bundle gère les modèles, routes, opérations.
  • Grid Bundle offre les vues (tableaux, filtres, formulaires).
  • En combinant les deux avec quelques attributs PHP (AsGrid, AsFilter, etc.), on génère une interface admin complète quasi automatiquement.

Nouveautés à venir
#

  • Intégration des Live Components dans les Grids pour une UX dynamique (filtrage, pagination, sans rechargement complet).
  • Mention spéciale à Loïc Frémont qui œuvre activement à cette intégration.

Sylius Party 2025 — Le mot de la fin
#

Une fois de plus, Emagma a organisé un événement de grande qualité, réunissant des acteurs clés de l’écosystème Sylius, qu’ils soient utilisateurs, contributeurs ou curieux de la stack. La journée a parfaitement mêlé conférences techniques pointues, retours d’expérience concrets et découvertes de nouveautés à venir dans Sylius 2.x.

Et comme toujours, l’apéro a été un moment convivial, propice aux échanges informels entre développeurs, agences, core team et contributeurs. L’occasion idéale de poser ses questions, partager des idées, ou simplement trinquer autour d’un bon verre entre passionnés du framework.

On a hâte de remettre ça pour la prochaine édition !

Un projet Sylius à lancer, migrer ou étendre ?

Migration vers Sylius 2.x, développement de plugins, back-offices avec Sylius Stack : nos experts Sylius vous accompagnent de bout en bout.
Découvrir notre expertise Sylius