§ 01 — CONTEXTE
Contexte
Mon inspecteur en bâtiment est un cabinet d'inspection résidentielle certifié BNQ 3009-500 qui dessert les Basses-Laurentides et Lanaudière. Le site existant ne convertissait pas et n'apparaissait pas dans les recherches locales : pas de pages dédiées par ville, performances mobiles médiocres et formulaire de contact peu fiable.
§ 02 — DÉFI
Défi
Construire une vitrine ultra-rapide qui inspire confiance avant la première prise de contact, tout en captant le trafic SEO local sur une vingtaine de municipalités. Le site devait charger instantanément même sur mobile en zone rurale, gérer un formulaire de contact sécurisé sans backend dédié, et donner au client la liberté d'activer ou désactiver une ville sans avoir à toucher au code.
§ 03 — SOLUTION
Solution
J'ai choisi Astro 6 pour livrer un site 100% statique avec quelques routes API serverless sur Vercel. Le contenu des villes vit dans des fichiers JSON pilotés par un index `_index.json` — activer une nouvelle ville se résume à passer `active: true`. Le hero d'accueil utilise une séquence de 55 frames WebP rendues en canvas pour un effet cinématographique sans JavaScript lourd. Le formulaire de contact passe par une route API Vercel avec rate limiting par IP, sanitisation XSS et envoi via Resend (DNS SPF/DKIM/DMARC configurés). Côté SEO, chaque page sert son propre JSON-LD (LocalBusiness, Service, BreadcrumbList), un sitemap d'images dédié alimente Google Images, et un fichier `llms.txt` structure le contenu pour les crawlers IA.
§ 04 — RÉSULTAT
Résultat
Le site décroche 100/100 sur les quatre métriques Lighthouse desktop (Performance, Accessibilité, Bonnes pratiques, SEO) et passe de 62 à 100 en performance mobile entre la livraison et la version optimisée. Les 21 pages villes sont indexées et commencent à générer des leads qualifiés. Le client peut maintenant activer une nouvelle zone de service en une minute, sans intervention technique.
