Svelte 5 + Symfony — retour d'expérience monorepo
Photo by Gabriel Heinzer on Unsplash
Retour d'expérience complet sur la migration Svelte 4 → 5 dans un monorepo Symfony hybride PHP/JS.
Photo by Lautaro Andreani on Unsplash
Svelte compile en vanilla JS — pas de runtime embarqué. Idéal pour intégrer des islands interactives dans des templates Twig sans alourdir le bundle. Aucun Stimulus.js, aucun React, aucune VM JS intermédiaire.
Ce deep dive couvre :
- Le registerSvelteControllerComponents pattern pour monter des composants Svelte dans du HTML serveur Symfony sans Stimulus (banni sur le projet Monwoo depuis 2025).
- La migration complète Svelte 4 → 5 : passage des stores réactifs aux runes ($state, $derived, $effect), gestion des signaux, et les pièges typiques.
- L'intégration Vite + AssetMapper Symfony 7.2 pour builder les bundles islands sans Webpack Encore.
- Le pattern SurveyJS + Svelte wrapper utilisé dans les funnels Monwoo (mws-funnel, moon-water-cycle).
- Les anti-patterns : variables non-rune qui ne triggerent plus la réactivité, $effect avec closures sur des runes qui fuient la mémoire, mount() vs hydrate() confusion.
Inclut les snippets concrets du monorepo Monwoo : 15 packages, 4 apps Symfony, 2 SvelteKit.
Article privé
Accédez à l'intégralité de cet article et à tous les deep dives R&D Monwoo.
Deja abonne ?