La cuisine de Maha
Migration d'un site statique Eleventy vers une application Symfony : back-office EasyAdmin, modèle Doctrine, formulaire de contact avec notification e-mail, et bascule sans interruption sur un hébergement mutualisé.
Le point de départ
Un site Eleventy : statique, rapide, mais dont chaque modification de contenu passait par le code et un redéploiement. L'objectif : rendre tout le contenu administrable sans perdre le design ni l'URL du site.
Réalisation
- Symfony et Twig, avec les templates Eleventy portés en Twig pour conserver le rendu à l'identique.
- Le modèle Doctrine : Menu, Dish, Review, ContactMessage et User, avec migrations versionnées sur MySQL.
- Le back-office avec EasyAdmin : CRUD sur chaque entité, upload d'images, accès protégé par le composant Security.
- Le formulaire de contact construit avec le composant Form, validé côté serveur, persisté en base et notifié par e-mail via Symfony Mailer.
Migration et déploiement
L'application a été développée dans un répertoire dédié, à côté du site Eleventy toujours en production. La bascule s'est faite en repointant le document root du domaine vers public/, sans interruption de service.
L'hébergement est un mutualisé o2switch (cPanel, PHP 8.2/8.3), avec un déploiement par composer install --no-dev --optimize-autoloader et vidage du cache en environnement de production.
Pourquoi Symfony plutôt qu'un CMS
Un WordPress aurait rendu le contenu éditable, mais au prix d'un thème à refaire, de plugins à maintenir et d'une surface d'attaque plus large. Symfony et EasyAdmin donnent une administration limitée exactement aux besoins de la cliente, sur une base de code que je maîtrise entièrement.
Boite à outils du projet:
- Symfony
- Twig
- Doctrine
- Scss
- Javascript
- MySql
Aperçu visuel du rendu sur ordinateur et sur mobile
Intégration responsive: mise en page fluide en Flexbox et Grid, typographie et espacements adaptatifs.
Images en WebP, servies à la bonne taille selon l’écran. Zones tactiles dimensionnées pour le mobile, intégration fidèle aux maquettes.
Structure Html validée selon les standards W3C et optimisée pour l'accessibilité.


Types d’audits réalisés
- Validation du code HTML avec le validateur du W3C, l’organisme qui définit les standards du web.
- Analyse des performances avec Google PageSpeed Insights, sur mobile et sur ordinateur.
- Accessibilité : contrastes, textes alternatifs, navigation au clavier, à partir du score Lighthouse.
- Audit SEO approfondi avec Ahrefs : erreurs techniques, liens cassés, redirections, balises manquantes ou en double.
- Suivi dans la Google Search Console : indexation des pages, erreurs d’exploration, requêtes qui amènent des visiteurs.
