{"pageProps":{"locale":{"code":"fr","domain":"frenchstack.fr","lang":"fr-FR","json":{"TRANSLATE":"Traduire en","EN":"Anglais","FR":"Français","NO_TRANSLATION_AVAILABLE":"Aucune traduction disponible","PROFILE_OF":"Profil de","FILTER_BY_TAG":"Filtrer par tag","REMOVE_FILTER":"Supprimer le filtre","RESULT":"Résulat","RESULTS":"Résulats","FORM_CONTACT_SUPPORT":"Support","FORM_CONTACT_SALES":"Devis","FORM_CONTACT_BUGS":"Rapport de bug","FORM_LOADING":"Chargement","FORM_SEND":"Envoyer","FORM_VERIFY":"Vérifier","FORM_NAME":"Nom","FORM_TOPIC":"Sujet","FORM_PHONE":"Téléphone","FORM_EMAIL":"Email","FORM_MESSAGE":"Message","FORM_DOMAIN_PLACEHOLDER":"exemple.fr","FORM_DOMAIN_AVAILABLE":"Félicitations, le domaine <span data-selector='domain'></span> est disponible !","FORM_DOMAIN_TAKEN":"Désolé, le domaine <span data-selector='domain'></span> est pris.","SUBSCRIBE":"S'abonner","SUCCESS_CONTACT":"Votre message a bien été envoyé ! Nous vous répondrons dans les plus brefs délais.","SOMETING_WENT_WRONG":"Oops, une erreur s'est produite. Veuillez réessayer ultérieurement.","PERFORMANCE":"Performance","ACCESSIBILITY":"Accessibilité","BEST_PRACTICES":"Bonnes pratiques","SEO":"Référencement","MOBILE":"Mobile","TABLET":"Tablette","DESKTOP":"Ordinateur","VISITORS":"Visiteurs","ENGAGEMENT":"Engagement","CONVERSIONS":"Conversions","JAN":"Janv","FEB":"Févr","MAR":"Mars","APR":"Avr","MAY":"Mai","JUN":"Juin","JUL":"Juil","AUG":"Août","SEP":"Sept","OCT":"Oct","NOV":"Nov","DEC":"Déc","METHOD_PHONE":"Téléphone","METHOD_EMAIL":"Email","FOOTER_TAGLINE":"Nous créons des expériences numériques uniques pour les marques et les entreprises."},"subdomains":{"blog":"blog","clients":"references","videos":"videos","services":"services"},"ogSection":"Technologie"},"slugs":["fr","blog","fallow-codebase-intelligence-typescript"],"component":"article","article":{"id":"content/articles/fr/fallow-codebase-intelligence-typescript.mdx","heroSection":{"heroTitle":"Fallow : Codebase Intelligence","heroSubtitle":"L'analyse statique Rust au service des développeurs et des agents IA","heroBadge":"","heroColoredWords":"1","heroBreakTitle":"","heroDescription":{"type":"root","children":[{"type":"p","children":[{"type":"text","text":"Analyse statique déterministe en Rust, élimination du code mort et gouvernance d'architecture."}]}]},"heroSubtitleIsInline":false,"heroHasBackground":false,"heroVideoBackground":"","heroStyle":{"heroBg":"","heroMaxWidth":"","heroMs":"","heroTitleMb":"","heroTitleColor":"","heroContentBg":"","heroContentAlign":"","heroContentBlur":"","heroBlurImage":"","navbarBg":"","navbarBorderColor":"","navbarLinkActive":"","navbarLinkHover":""},"imageAlt":"","imageWidth":0,"imageHeight":0},"seoSection":{"metaTitle":"Fallow : Codebase Intelligence TypeScript","metaDescription":"Découvrez Fallow, le moteur Rust d'intelligence de codebase TypeScript. Détection de code mort, architecture et accélération des agents IA.","metaTags":"Fallow, TypeScript, JavaScript, codebase intelligence, code mort, refactoring, agent IA, qualité de code, architecture logicielle","socialImageWidth":0,"socialImageHeight":0},"heroUpdatedAt":"2026-08-26T09:00:00.000Z","localeCode":"fr","slug":"fallow-codebase-intelligence-typescript","url":"/fr/blog/fallow-codebase-intelligence-typescript","ogId":"fallow-codebase-intelligence-typescript-blog-fr","ogImagePath":"/og/fallow-codebase-intelligence-typescript-blog-fr.png","type":"Article","title":"Fallow : Codebase Intelligence au service des agents IA","subtitle":"Pourquoi ce moteur Rust redéfinit les standards de qualité et de refactoring TypeScript","browserUrl":"","textPreview":{"type":"root","children":[{"type":"p","children":[{"type":"text","text":"Fallow révolutionne l'analyse statique de vos projets TypeScript et JavaScript. Découvrez comment ce binaire Rust déterministe traque le code mort, protège l'architecture logicielle et transforme les agents IA en experts chirurgicaux."}]}]},"subdomainKey":"blog","subdomain":"blog","draft":true,"logoAlt":"","logoWidth":0,"logoHeight":0,"icon":"code","body":{"type":"root","children":[{"type":"p","children":[{"type":"text","text":"Dans l'écosystème moderne du développement web, la complexité des applications "},{"type":"text","text":"TypeScript et JavaScript","bold":true},{"type":"text","text":" croît à un rythme exponentiel. À mesure que les équipes grandissent et que les fonctionnalités s'accumulent, un phénomène insidieux s'installe : la "},{"type":"text","text":"dette technique invisible","bold":true},{"type":"text","text":". Fichiers orphelins, exports devenus obsolètes, dépendances circulaires, duplications de logique métier et dérives architecturales finissent par paralyser la vélocité des équipes."}]},{"type":"p","children":[{"type":"text","text":"L'arrivée massive des "},{"type":"text","text":"agents IA de codage","bold":true},{"type":"text","text":" (Claude Code, Cursor, Codex) amplifie ce défi. Sans une cartographie exacte et déterministe du projet, un agent IA navigue à l'aveugle : il lit des dizaines de fichiers superflus, brûle inutilement des milliers de jetons de contexte, et risque à tout moment d'introduire des régressions silencieuses."}]},{"type":"p","children":[{"type":"text","text":"C'est précisément pour résoudre cette équation complexe que "},{"type":"text","text":"Fallow","bold":true},{"type":"text","text":" s'impose comme une avancée majeure dans la "},{"type":"text","text":"codebase intelligence","bold":true},{"type":"text","text":"."}]},{"type":"hr","children":[{"type":"text","text":""}]},{"type":"h3","children":[{"type":"text","text":"Qu'est-ce que Fallow ? La puissance du natif au service de TypeScript"}]},{"type":"p","children":[{"type":"text","text":"Distribué sous la forme d'un "},{"type":"text","text":"binaire Rust unique","bold":true},{"type":"text","text":", "},{"type":"a","url":"https://fallow.tools","title":"Fallow - Codebase intelligence","children":[{"type":"text","text":"Fallow"}]},{"type":"text","text":" propose une approche radicalement différente des linters traditionnels. Contrairement aux outils historiques de l'écosystème JavaScript, Fallow n'embarque "},{"type":"text","text":"aucune IA dans son analyseur","bold":true},{"type":"text","text":" et ne nécessite "},{"type":"text","text":"ni runtime Node.js ni compilateur TypeScript (","bold":true},{"type":"text","text":"tsc","code":true,"bold":true},{"type":"text","text":")","bold":true},{"type":"text","text":" pour réaliser son analyse statique structurelle."}]},{"type":"p","children":[{"type":"text","text":"Grâce à son moteur natif multi-threadé, Fallow est capable d'analyser un monorepo de plusieurs dizaines de milliers de lignes en "},{"type":"text","text":"moins d'une seconde","bold":true},{"type":"text","text":", délivrant des résultats 100 % déterministes et immédiatement exploitables."}]},{"type":"mdxJsxFlowElement","name":"row2Cols","children":[{"type":"text","text":""}],"props":{"contentLeft":{"type":"root","children":[{"type":"ul","children":[{"type":"li","children":[{"type":"lic","children":[{"type":"text","text":"Zéro configuration initiale","bold":true},{"type":"text","text":" : plus de 100 plugins de frameworks intégrés (Next.js, Vite, Angular, React, Astro, Svelte, Vue...)."}]}]},{"type":"li","children":[{"type":"lic","children":[{"type":"text","text":"Performances Rust","bold":true},{"type":"text","text":" : temps d'analyse divisé par 10 à 50 par rapport aux chaînes d'outils Node.js."}]}]}]}]},"contentRight":{"type":"root","children":[{"type":"ul","children":[{"type":"li","children":[{"type":"lic","children":[{"type":"text","text":"Contrats typés universels","bold":true},{"type":"text","text":" : sorties JSON unifiées et typées pour l'automatisation."}]}]},{"type":"li","children":[{"type":"lic","children":[{"type":"text","text":"Écosystème unifié","bold":true},{"type":"text","text":" : remplace avantageusement et consolide plusieurs outils spécialisés."}]}]}]}]}}},{"type":"hr","children":[{"type":"text","text":""}]},{"type":"h3","children":[{"type":"text","text":"Une vision panoramique et chirurgicale de la santé du code"}]},{"type":"p","children":[{"type":"text","text":"Fallow ne se contente pas de chercher des variables inutilisées. Il ausculte la structure profonde de votre codebase à travers plusieurs lentilles d'analyse complémentaires :"}]},{"type":"h4","children":[{"type":"text","text":"1. Traque du code mort et des symboles orphelins"}]},{"type":"p","children":[{"type":"text","text":"Fallow identifie avec une précision chirurgicale les fichiers inutilisés, les exports morts, les types fantômes, les membres de classes superflus et les packages "},{"type":"text","text":"node_modules","code":true},{"type":"text","text":" oubliés dans le "},{"type":"text","text":"package.json","code":true},{"type":"text","text":". Avant toute suppression, la commande "},{"type":"text","text":"--trace","code":true},{"type":"text","text":" permet de fournir une "},{"type":"text","text":"preuve formelle d'inutilisation","bold":true},{"type":"text","text":" :"}]},{"type":"code_block","lang":"bash","value":"# Analyse globale du code mort\nnpx fallow dead-code\n\n# Prouver formellement qu'un symbole est orphelin avant de le supprimer\nnpx fallow dead-code --trace src/services/auth.service.ts:verifyToken","children":[{"type":"text","text":""}]},{"type":"h4","children":[{"type":"text","text":"2. Détection avancée de duplication"}]},{"type":"p","children":[{"type":"text","text":"Grâce à un algorithme fondé sur les "},{"type":"text","text":"suffix-arrays","bold":true},{"type":"text","text":", Fallow repère la duplication structurelle non seulement dans les fichiers JavaScript et TypeScript, mais aussi au sein des feuilles de style CSS et des blocs de templates (Vue, Svelte, Astro). Plusieurs degrés de sévérité sont paramétrables ("},{"type":"text","text":"strict","code":true},{"type":"text","text":", "},{"type":"text","text":"mild","code":true},{"type":"text","text":", "},{"type":"text","text":"weak","code":true},{"type":"text","text":", "},{"type":"text","text":"semantic","code":true},{"type":"text","text":") :"}]},{"type":"code_block","lang":"bash","value":"# Recherche des groupes de duplication de code\nnpx fallow dupes --min-tokens 50","children":[{"type":"text","text":""}]},{"type":"h4","children":[{"type":"text","text":"3. Score de santé et hotspots de complexité"}]},{"type":"p","children":[{"type":"text","text":"Fallow calcule un "},{"type":"text","text":"score de santé global (0 à 100)","bold":true},{"type":"text","text":" assorti d'une note synthétique, mettant en lumière les goulots de complexité cyclomatique et les fichiers critiques nécessitant un refactoring prioritaire :"}]},{"type":"code_block","lang":"bash","value":"# Évaluation instantanée de la santé globale de la plateforme\nnpx fallow health --score --css","children":[{"type":"text","text":""}]},{"type":"h4","children":[{"type":"text","text":"4. Gouvernance des frontières architecturales (Boundaries)"}]},{"type":"p","children":[{"type":"text","text":"Pour préserver la cohérence des grands projets, Fallow intègre des presets architecturaux éprouvés ("},{"type":"text","text":"bulletproof","code":true},{"type":"text","text":", "},{"type":"text","text":"hexagonal","code":true},{"type":"text","text":", "},{"type":"text","text":"layered","code":true},{"type":"text","text":", "},{"type":"text","text":"feature-sliced","code":true},{"type":"text","text":"). Il interdit formellement les imports croisés non autorisés (par exemple, un module de domaine important directement un contrôleur d'infrastructure) :"}]},{"type":"code_block","lang":"bash","value":"# Vérifier la conformité des frontières avant édition\nnpx fallow guard src/modules/billing/invoice.ts","children":[{"type":"text","text":""}]},{"type":"hr","children":[{"type":"text","text":""}]},{"type":"h3","children":[{"type":"text","text":"Le copilote indispensable des agents IA"}]},{"type":"p","children":[{"type":"text","text":"L'intégration d'un outil comme Fallow transforme radicalement l'efficacité d'un "},{"type":"text","text":"agent IA de développement","bold":true},{"type":"text","text":". Plutôt que de confier à l'agent la lourde tâche de parcourir l'arborescence pour deviner l'impact d'un changement, Fallow lui fournit des points d'appui déterministes et fiables."}]},{"type":"h4","children":[{"type":"text","text":"Une économie drastique de jetons (Token Efficiency)"}]},{"type":"p","children":[{"type":"text","text":"Au lieu d'injecter des milliers de lignes de code dans la fenêtre de contexte de l'IA pour explorer un refactoring, l'agent exécute Fallow en sous-main. En "},{"type":"text","text":"~1 seconde","bold":true},{"type":"text","text":", il obtient un verdict structuré et exhaustif. Cette approche réduit de façon spectaculaire la consommation de jetons, diminue la latence des réponses et supprime les hallucinations d'imports."}]},{"type":"h4","children":[{"type":"text","text":"Serveur MCP natif et intégration en une commande"}]},{"type":"p","children":[{"type":"text","text":"Fallow embarque nativement un serveur "},{"type":"text","text":"MCP","bold":true},{"type":"text","text":" ("},{"type":"text","text":"fallow-mcp","code":true},{"type":"text","text":") ainsi qu'un skill versionné ("},{"type":"text","text":"node_modules/fallow/skills/fallow","code":true},{"type":"text","text":"). La commande "},{"type":"text","text":"npx fallow agent install","code":true},{"type":"text","text":" configure automatiquement les environnements tels que "},{"type":"text","text":"Claude Code","bold":true},{"type":"text","text":", "},{"type":"text","text":"Cursor","bold":true},{"type":"text","text":" et "},{"type":"text","text":"Codex","bold":true},{"type":"text","text":" en créant les fichiers de règles ("},{"type":"text","text":"AGENTS.md","code":true},{"type":"text","text":", imports "},{"type":"text","text":"CLAUDE.md","code":true},{"type":"text","text":", hooks de validation) :"}]},{"type":"code_block","lang":"bash","value":"# Installation et configuration automatique des environnements d'agents IA\nnpx fallow agent install\n\n# Configuration de hooks de garde pour les agents et Git\nnpx fallow hooks install --target agent","children":[{"type":"text","text":""}]},{"type":"h4","children":[{"type":"text","text":"Des codes de sortie univoques et un contrat JSON typé"}]},{"type":"p","children":[{"type":"text","text":"Les agents et scripts d'intégration continue s'appuient sur une convention de sortie claire et rigoureuse :"}]},{"type":"ul","children":[{"type":"li","children":[{"type":"lic","children":[{"type":"text","text":"Code 0","bold":true},{"type":"text","text":" : Codebase saine ou audit validé."}]}]},{"type":"li","children":[{"type":"lic","children":[{"type":"text","text":"Code 1","bold":true},{"type":"text","text":" : Anomalies détectées (résultat d'analyse normal indiquant des findings à traiter)."}]}]},{"type":"li","children":[{"type":"lic","children":[{"type":"text","text":"Code 2","bold":true},{"type":"text","text":" : Erreur d'exécution réelle (erreur système avec enveloppe JSON sur stdout)."}]}]}]},{"type":"code_block","lang":"typescript","value":"// Typage officiel des sorties Fallow pour vos scripts d'orchestration\nimport type { CheckOutput, FallowJsonOutput } from 'fallow/types';","children":[{"type":"text","text":""}]},{"type":"hr","children":[{"type":"text","text":""}]},{"type":"h3","children":[{"type":"text","text":"Adoption progressive : "},{"type":"text","text":"fallow audit","code":true},{"type":"text","text":" et gestion de l'existant"}]},{"type":"p","children":[{"type":"text","text":"L'un des freins majeurs à l'adoption de nouveaux outils de qualité est le volume écrasant d'erreurs historiques sur les bases de code matures. Fallow résout ce problème avec une élégance remarquable grâce à son mode "},{"type":"text","text":"audit incrémental","bold":true},{"type":"text","text":"."}]},{"type":"p","children":[{"type":"text","text":"La commande "},{"type":"text","text":"npx fallow audit","code":true},{"type":"text","text":" analyse uniquement les fichiers modifiés par rapport à la branche de référence Git et "},{"type":"text","text":"ne bloque la pull request que sur les régressions introduites par le développeur ou l'agent IA","bold":true},{"type":"text","text":", ignorant volontairement la dette préexistante :"}]},{"type":"code_block","lang":"bash","value":"# Sauvegarder l'état actuel en quarantaine pour démarrer sereinement\nnpx fallow --save-baseline\n\n# Auditer uniquement les changements de la branche courante\nnpx fallow audit --against origin/main","children":[{"type":"text","text":""}]},{"type":"p","children":[{"type":"text","text":"Sur un cas réel issu du monorepo "},{"type":"text","text":"Vitest","bold":true},{"type":"text","text":" (15 commits analysés), Fallow a audité 19 fichiers, identifié 156 éléments de code mort et 8 groupes de duplication en "},{"type":"text","text":"1,05 seconde","bold":true},{"type":"text","text":", validant le passage de la gate en isolant automatiquement les 163 anomalies héritées du passé."}]},{"type":"hr","children":[{"type":"text","text":""}]},{"type":"h3","children":[{"type":"text","text":"Migration fluide et visualisation interactive"}]},{"type":"p","children":[{"type":"text","text":"Fallow facilite également la transition depuis les outils fragmentés grâce à des commandes dédiées d'assistance et de migration :"}]},{"type":"code_block","lang":"bash","value":"# Analyser la stack technique et recommander la configuration idéale\nnpx fallow recommend\n\n# Migrer automatiquement depuis Knip, jscpd et Stylelint\nnpx fallow migrate\n\n# Générer une cartographie interactive en HTML (Treemap & graphe d'imports)\nnpx fallow viz","children":[{"type":"text","text":""}]},{"type":"p","children":[{"type":"text","text":"La commande "},{"type":"text","text":"npx fallow viz","code":true},{"type":"text","text":" produit une interface web visuelle permettant d'explorer les dépendances, d'observer la topologie des modules et de visualiser instantanément les zones à forte complexité."}]},{"type":"mdxJsxFlowElement","name":"buttons","children":[{"type":"text","text":""}],"props":{"buttons":[{"icon":"gitHub","label":"Site officiel","link":"https://fallow.tools","style":"primary"},{"icon":"codeFile","label":"Documentation","link":"https://docs.fallow.tools","style":"light"}]}},{"type":"hr","children":[{"type":"text","text":""}]},{"type":"h3","children":[{"type":"text","text":"L'exigence technique au service de la pérennité logicielle"}]},{"type":"p","children":[{"type":"text","text":"Chez "},{"type":"text","text":"French Stack","bold":true},{"type":"text","text":", nous cultivons l'excellence logicielle et accompagnons les entreprises ambitieuses dans la conception de plateformes web et mobiles à haute valeur ajoutée. L'adoption d'outils rigoureux tels que Fallow illustre parfaitement notre vision : allier la puissance des nouvelles technologies d'intelligence artificielle à des garde-fous d'ingénierie stricts et déterministes."}]},{"type":"p","children":[{"type":"text","text":"En éliminant le code superflu et en automatisant le respect des règles architecturales, vous offrez à vos équipes et à vos agents IA le cadre idéal pour construire des applications pérennes, rapides et sereinement maintenables."}]}]},"dateCreate":"2026-08-26T09:00:00.000Z","dateUpdate":"2026-08-26T09:00:00.000Z","author":{"id":"content/authors/fr/nicolas-roehm-bettcher.mdx","heroSection":{"heroTitle":"Nicolas Roehm","heroSubtitle":"Ingénieur logiciel","heroBadge":"","heroColoredWords":"","heroBreakTitle":"","heroDescription":{"type":"root","children":[{"type":"p","children":[{"type":"text","text":"Fondateur de French Stack, je conçois des solutions informatiques complètes."}]},{"type":"p","children":[{"type":"text","text":"Développeur full-stack, j'interviens principalement sur des projets frontend avec Angular, React ou Vue."}]},{"type":"p","children":[{"type":"text","text":"Passionné de design, voici quelques-unes de mes "},{"type":"a","url":"https://www.artstation.com/nicolas-roehm","title":"ArtStation - Nicolas Roehm","children":[{"type":"text","text":"conceptions graphiques"}]},{"type":"text","text":"."}]},{"type":"mdxJsxFlowElement","name":"socialLinks","children":[{"type":"text","text":""}],"props":{"links":[{"icon":"gitHub","link":"https://github.com/NicolasRoehm"},{"icon":"stackOverflow","link":"https://stackoverflow.com/users/7462178/nicolas-roehm?tab=profile"},{"icon":"linkedIn","link":"https://fr.linkedin.com/in/nicolas-roehm-bettcher"}]}}]},"heroSubtitleIsInline":true,"heroHasBackground":false,"heroImage":"/images/nicolas-roehm-bettcher.png","heroVideoBackground":"","heroStyle":{"heroBg":"linear-gradient(312deg, #0800ff 0%, #4300ff00 70%)","heroMaxWidth":"","heroMs":"25%","heroTitleMb":"0.5rem","heroTitleColor":"","heroContentBg":"","heroContentAlign":"","heroContentBlur":"","heroBlurImage":"","navbarBg":"#fff0","navbarBorderColor":"","navbarLinkActive":"#6785be","navbarLinkHover":"#6785be"},"imageAlt":"nicolas roehm bettcher","imageWidth":0,"imageHeight":0},"seoSection":{"metaTitle":"Nicolas Roehm, Ingénieur logiciel","metaDescription":"Passionné d'informatique, je conçois des sites web dans leur intégralité : design, developpement, référencement, e-reputation, e-mailling, hébergement","metaTags":"Nicolas Roehm, Ingénieur logiciel, web, mobile, site internet","socialImageWidth":0,"socialImageHeight":0},"heroUpdatedAt":"2024-12-09T00:38:50.025Z","localeCode":"fr","slug":"nicolas-roehm-bettcher","url":"/fr/nicolas-roehm-bettcher","ogId":"nicolas-roehm-bettcher-fr","ogImagePath":"/og/nicolas-roehm-bettcher-fr.png","type":"Author","title":"Nicolas Roehm-Bettcher","avatar":"/images/nicolas-roehm-avatar.png","lname":"Roehm","fname":"Nicolas","name":"Nicolas Roehm","translations":[{"localeCode":"en","title":"Nicolas Roehm-Bettcher","slug":"nicolas-roehm-bettcher","url":"/en/nicolas-roehm-bettcher"}]},"translations":[],"tags":[{"id":"content/tags/fr/typescript.mdx","localeCode":"fr","title":"TypeScript","slug":"typescript","url":"/fr/blog/typescript"}]},"page":{"id":"content/subdomains/fr/blog.mdx","heroSection":{"heroTitle":"Actualités digitales","heroSubtitle":"","heroBadge":"","heroColoredWords":"2","heroBreakTitle":"","heroShape":"shiny","heroGradient":"business-gradient","heroDescription":{"type":"root","children":[{"type":"p","children":[{"type":"text","text":"Explorez les dernières avancées en "},{"type":"text","text":"design web","bold":true},{"type":"text","text":", "},{"type":"text","text":"SEO","bold":true},{"type":"text","text":", "},{"type":"text","text":"marketing digital","bold":true},{"type":"text","text":", "},{"type":"text","text":"développement web","bold":true},{"type":"text","text":" et bien plus."}]},{"type":"p","children":[{"type":"text","text":"Nos articles décryptent les "},{"type":"text","text":"technologies innovantes","bold":true},{"type":"text","text":" et les "},{"type":"text","text":"standards du web","bold":true},{"type":"text","text":" qui façonnent l'"},{"type":"text","text":"avenir du numérique","bold":true},{"type":"text","text":"."}]},{"type":"p","children":[{"type":"text","text":"Restez connecté, suivez-nous sur les "},{"type":"text","text":"réseaux sociaux","bold":true},{"type":"text","text":"."}]}]},"heroSubtitleIsInline":false,"heroHasBackground":false,"heroImage":"/images/blog-news-web.jpg","heroVideoBackground":"","heroStyle":{"heroBg":"linear-gradient(353deg, rgba(255,129,0,0.64) 0%, #0018ffe0 120%)","heroMaxWidth":"","heroMs":"","heroTitleMb":"","heroTitleColor":"","heroContentBg":"","heroContentAlign":"","heroContentBlur":"","heroBlurImage":"","navbarBg":"","navbarBorderColor":"","navbarLinkActive":"","navbarLinkHover":""},"imageAlt":"blog news web","imageWidth":0,"imageHeight":0},"seoSection":{"metaTitle":"Actualité numérique","metaDescription":"Magazine en ligne pour apprendre le Web, trouver des ressources, parcourir les tendances et déguster un café chaud","metaTags":"inspiration web, tutoriels développement web, tendances web","socialImageWidth":0,"socialImageHeight":0},"heroUpdatedAt":"2024-12-12T18:23:51.381Z","localeCode":"fr","slug":"blog","url":"/fr/blog","ogId":"blog-fr","ogImagePath":"/og/blog-fr.png","type":"Subdomain","title":"Blog","subdomainKey":"blog","subdomain":"blog","translations":[{"localeCode":"en","title":"Blog","slug":"blog","url":"/en/blog"}],"canShare":true,"canComment":true,"hasAuthor":true,"tagsInPanel":true,"cardContainer":"col-md-6","cardTemplate":"default"},"neighbors":[null,null],"global":{"id":"content/global/fr/settings.json","localeCode":"fr","header":{"nav":[{"href":"index","label":"Accueil"},{"href":"blog","label":"Blog"},{"href":"videos","label":"Vidéos"},{"href":"services","label":"Prestations"},{"href":"references","label":"Références"},{"href":"a-propos","label":"À propos"},{"href":"contact","label":"Contact"}]},"footer":{"social":[{"website":"x","account":"RoehmNicolas"},{"website":"instagram","account":"roehm.nicolas"},{"website":"facebook","account":"thefrenchstack"},{"website":"youtube","account":"@frenchstack"}],"hasSocial":true,"nav":[{"title":"L'agence","links":[{"href":"references","label":"Références"},{"href":"a-propos","label":"À propos"},{"href":"contact","label":"Contact"}]},{"title":"Prestations","links":[{"href":"services/creation-graphique","label":"Graphisme"},{"href":"services/developpement-web-mobile","label":"Développement"},{"href":"services/marketing-web","label":"Marketing"},{"href":"services/formation-informatique","label":"Formation"}]},{"title":"Blog","links":[{"href":"blog/angular","label":"Angular"},{"href":"blog/jquery","label":"jQuery"}]},{"title":"Vidéos","links":[{"href":"videos/marketing-audiovisuel","label":"Marketing audiovisuel"}]}]},"bottom":{"dateCreate":"2015-12-27T05:55:00.000Z","nav":[{"href":"mentions-legales","label":"Mentions légales"},{"href":"politique-de-confidentialite","label":"Politique de confidentialité"}],"hasLinks":true},"contactInfo":{"contactMethods":[{"id":"email","icon":"envelope","value":"frenchstack@gmail.com"},{"id":"phone","icon":"phone","value":"0651570751"}]}}},"__N_SSG":true}