[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"article-comment-nous-utilisons-claude-code-nuxt-rust-monorepo":3},{"article":4,"author":63},{"id":5,"category_id":6,"title":7,"slug":8,"excerpt":9,"content_md":10,"content_html":11,"locale":12,"author_id":13,"published":14,"published_at":15,"meta_title":16,"meta_description":17,"focus_keyword":18,"og_image":19,"canonical_url":19,"robots_meta":20,"created_at":15,"updated_at":15,"tags":21,"category_name":43,"related_articles":44},"d0000000-0000-0000-0000-000000000559","a0000000-0000-0000-0000-000000000066","Comment nous utilisons Claude Code pour maintenir un monorepo Nuxt 4 + Rust","comment-nous-utilisons-claude-code-nuxt-rust-monorepo","Un regard en coulisses sur la façon dont Open Soft utilise Claude Code comme outil de développement quotidien pour notre monorepo de production. Workflows réels pour le refactoring multi-fichiers, l'écriture de migrations, la génération de tests, la revue de code et l'outillage personnalisé avec hooks et serveurs MCP.","## Notre Stack et Pourquoi Claude Code Convient\n\nChez Open Soft, notre produit principal est un site web construit comme un monorepo : un frontend Nuxt 4 avec TypeScript et un backend API Rust\u002FAxum adossé à PostgreSQL. Le codebase couvre deux langages, deux systèmes de build, des contrats de données partagés, des migrations de base de données, des fichiers i18n pour 10 langues et une infrastructure de déploiement. Les modifications touchent fréquemment les deux côtés du stack simultanément.\n\nNous avons adopté Claude Code mi-2025 et il est devenu notre outil de développement le plus utilisé. Non pas parce qu'il écrit du code pour nous — mais parce qu'il raisonne sur l'intégralité de notre codebase d'une manière qu'aucun autre outil ne peut faire. Quand vous dites à Claude Code « ajoute un champ published_at aux articles », il lit la migration Rust, met à jour les requêtes SQL dans le handler, modifie les types TypeScript dans le frontend, ajuste le composant de page Nuxt, met à jour les 10 fichiers de locale et exécute le build pour vérifier.\n\n## CLAUDE.md : Enseigner Vos Conventions à l'Agent\n\nLa base d'une utilisation efficace de Claude Code est le fichier `CLAUDE.md`. C'est un fichier d'instructions au niveau du projet que Claude Code lit au début de chaque session.\n\nNotre CLAUDE.md inclut :\n\n- **Conventions de commit :** Chaque commit doit commencer par `TASK-XXX:` et utiliser le mode impératif\n- **Vue d'ensemble de l'architecture :** Structure du monorepo\n- **Règles de style de code :** TypeScript strict, pas de `any`, uniquement Composition API, syntaxe `\u003Cscript setup>`\n- **Règles i18n :** Les 10 locales doivent rester synchronisées, clés triées alphabétiquement\n- **Règles de sécurité :** Pas de secrets dans les commits, SQL paramétré, origines CORS explicites\n\nClaude Code suit ces conventions de manière cohérente. Cela élimine toute une catégorie de retours de revue de code — les violations de conventions.\n\n## Refactoring Multi-Fichiers : Le Cas d'Usage Phare\n\n**Tâche :** Ajouter des champs SEO (`meta_title`, `meta_description`, `focus_keyword`, `robots_meta`) au système d'articles.\n\nSans Claude Code, ce changement nécessite 10 étapes dans 12+ fichiers. Avec Claude Code, nous tapons une seule commande et il exécute le tout en une seule boucle agentique en environ 5 minutes, contre 45-60 minutes manuellement.\n\n## Écriture de Migrations\n\nLes migrations de base de données sont particulièrement bien adaptées à Claude Code car elles nécessitent la compréhension du schéma actuel, de l'état final souhaité et du chemin de transformation sûr entre les deux.\n\n## Génération de Tests\n\nNous utilisons Claude Code intensivement pour générer des fixtures de test et des données SQL de seed. Nos fichiers de fixtures contiennent du contenu réaliste de longue durée (articles de 1500+ mots) avec des métadonnées SEO appropriées.\n\n## Revue de Code avec Claude Code\n\nAvant d'ouvrir une merge request, nous exécutons Claude Code comme réviseur. Cela capture environ 30% des problèmes qui seraient autrement trouvés lors de la revue de code humaine.\n\n## Hooks : Automatiser les Portes de Qualité\n\n**Hook pré-commit :** Exécute `cargo fmt --check` et `cargo clippy` avant que Claude Code ne crée un commit.\n\n**Hook post-édition :** Après que Claude Code modifie un fichier dans `\u002Fi18n\u002Flocales\u002F`, un hook vérifie que les 10 fichiers de locale ont des ensembles de clés identiques.\n\n## Serveurs MCP : Étendre les Capacités de Claude Code\n\n1. **Serveur MCP base de données :** Permet à Claude Code d'interroger directement notre PostgreSQL de développement.\n2. **Serveur MCP statut de déploiement :** Se connecte à notre pipeline CI\u002FCD.\n\n## Astuces pour les Grands Codebases avec 1M de Contexte\n\n**Laissez Claude Code explorer.** Ne tentez pas de pré-sélectionner les fichiers à montrer. Décrivez ce que vous voulez et laissez Claude Code utiliser ses outils.\n\n**Utilisez CLAUDE.md pour le contexte stable.** Les informations qui ne changent pas entre les sessions vont dans CLAUDE.md.\n\n**Découpez les méga-tâches en phases.** Même avec 1M de tokens, une tâche comme « refactorer tout le système d'authentification » bénéficie d'un phasage.\n\n**Faites confiance à la boucle agentique.** Ne l'interrompez pas en cours de cycle.\n\n## Pièges et Solutions\n\n**Piège : Sur-ingénierie.** Solution : Ajoutez « KISS — Gardez les choses simples. Évitez la sur-ingénierie. » à votre CLAUDE.md.\n\n**Piège : Contexte périmé dans les longues sessions.** Solution : Démarrez une nouvelle session pour chaque tâche majeure.\n\n**Piège : Sortie non-déterministe.** Solution : Utilisez des prompts spécifiques et détaillés.\n\n**Piège : Qualité des données de test.** Solution : Révisez toujours les fixtures générées et exécutez la suite de tests complète.\n\n## FAQ\n\n### Combien coûte Claude Code au quotidien ?\n\nPour notre équipe de 4 développeurs, nous dépensons environ 200-300$\u002Fmois en utilisation API Claude Code. Le plan Max à 20$\u002Fmois par développeur est une alternative plus prévisible.\n\n### Claude Code fonctionne-t-il hors ligne ?\n\nNon. Claude Code nécessite une connexion internet pour communiquer avec l'API d'Anthropic.\n\n### Claude Code peut-il casser notre build ?\n\nOui, mais il détecte la plupart des problèmes lui-même. Environ 90% des builds réussissent du premier coup et 99% après la boucle d'auto-correction.\n\n### Claude Code convient-il aux développeurs solo ?\n\nAbsolument. Il sert de second regard pour la revue de code, de base de connaissances pour les conventions du projet, et de multiplicateur de force pour les tâches fastidieuses.\n\n## Conclusion\n\nClaude Code n'est pas une baguette magique qui écrit votre application. C'est un multiplicateur de force qui excelle dans le raisonnement cross-stack, l'application des conventions et les modifications multi-fichiers fastidieuses. La combinaison de CLAUDE.md pour la mémoire persistante du projet, des hooks pour l'application de la qualité et des serveurs MCP pour l'accès aux outils externes en fait l'outil de développement IA le plus capable que nous ayons utilisé pour le travail en monorepo.\n\nL'insight clé après 9 mois d'utilisation quotidienne : Claude Code a le plus de valeur non pas pour écrire du nouveau code, mais pour maintenir le code existant — refactoring, migrations, tests et revues.","\u003Ch2 id=\"notre-stack-et-pourquoi-claude-code-convient\">Notre Stack et Pourquoi Claude Code Convient\u003C\u002Fh2>\n\u003Cp>Chez Open Soft, notre produit principal est un site web construit comme un monorepo : un frontend Nuxt 4 avec TypeScript et un backend API Rust\u002FAxum adossé à PostgreSQL. Le codebase couvre deux langages, deux systèmes de build, des contrats de données partagés, des migrations de base de données, des fichiers i18n pour 10 langues et une infrastructure de déploiement. Les modifications touchent fréquemment les deux côtés du stack simultanément.\u003C\u002Fp>\n\u003Cp>Nous avons adopté Claude Code mi-2025 et il est devenu notre outil de développement le plus utilisé. Non pas parce qu’il écrit du code pour nous — mais parce qu’il raisonne sur l’intégralité de notre codebase d’une manière qu’aucun autre outil ne peut faire. Quand vous dites à Claude Code « ajoute un champ published_at aux articles », il lit la migration Rust, met à jour les requêtes SQL dans le handler, modifie les types TypeScript dans le frontend, ajuste le composant de page Nuxt, met à jour les 10 fichiers de locale et exécute le build pour vérifier.\u003C\u002Fp>\n\u003Ch2 id=\"claude-md-enseigner-vos-conventions-l-agent\">CLAUDE.md : Enseigner Vos Conventions à l’Agent\u003C\u002Fh2>\n\u003Cp>La base d’une utilisation efficace de Claude Code est le fichier \u003Ccode>CLAUDE.md\u003C\u002Fcode>. C’est un fichier d’instructions au niveau du projet que Claude Code lit au début de chaque session.\u003C\u002Fp>\n\u003Cp>Notre CLAUDE.md inclut :\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Conventions de commit :\u003C\u002Fstrong> Chaque commit doit commencer par \u003Ccode>TASK-XXX:\u003C\u002Fcode> et utiliser le mode impératif\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Vue d’ensemble de l’architecture :\u003C\u002Fstrong> Structure du monorepo\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Règles de style de code :\u003C\u002Fstrong> TypeScript strict, pas de \u003Ccode>any\u003C\u002Fcode>, uniquement Composition API, syntaxe \u003Ccode>&lt;script setup&gt;\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Règles i18n :\u003C\u002Fstrong> Les 10 locales doivent rester synchronisées, clés triées alphabétiquement\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Règles de sécurité :\u003C\u002Fstrong> Pas de secrets dans les commits, SQL paramétré, origines CORS explicites\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Claude Code suit ces conventions de manière cohérente. Cela élimine toute une catégorie de retours de revue de code — les violations de conventions.\u003C\u002Fp>\n\u003Ch2 id=\"refactoring-multi-fichiers-le-cas-d-usage-phare\">Refactoring Multi-Fichiers : Le Cas d’Usage Phare\u003C\u002Fh2>\n\u003Cp>\u003Cstrong>Tâche :\u003C\u002Fstrong> Ajouter des champs SEO (\u003Ccode>meta_title\u003C\u002Fcode>, \u003Ccode>meta_description\u003C\u002Fcode>, \u003Ccode>focus_keyword\u003C\u002Fcode>, \u003Ccode>robots_meta\u003C\u002Fcode>) au système d’articles.\u003C\u002Fp>\n\u003Cp>Sans Claude Code, ce changement nécessite 10 étapes dans 12+ fichiers. Avec Claude Code, nous tapons une seule commande et il exécute le tout en une seule boucle agentique en environ 5 minutes, contre 45-60 minutes manuellement.\u003C\u002Fp>\n\u003Ch2 id=\"criture-de-migrations\">Écriture de Migrations\u003C\u002Fh2>\n\u003Cp>Les migrations de base de données sont particulièrement bien adaptées à Claude Code car elles nécessitent la compréhension du schéma actuel, de l’état final souhaité et du chemin de transformation sûr entre les deux.\u003C\u002Fp>\n\u003Ch2 id=\"g-n-ration-de-tests\">Génération de Tests\u003C\u002Fh2>\n\u003Cp>Nous utilisons Claude Code intensivement pour générer des fixtures de test et des données SQL de seed. Nos fichiers de fixtures contiennent du contenu réaliste de longue durée (articles de 1500+ mots) avec des métadonnées SEO appropriées.\u003C\u002Fp>\n\u003Ch2 id=\"revue-de-code-avec-claude-code\">Revue de Code avec Claude Code\u003C\u002Fh2>\n\u003Cp>Avant d’ouvrir une merge request, nous exécutons Claude Code comme réviseur. Cela capture environ 30% des problèmes qui seraient autrement trouvés lors de la revue de code humaine.\u003C\u002Fp>\n\u003Ch2 id=\"hooks-automatiser-les-portes-de-qualit\">Hooks : Automatiser les Portes de Qualité\u003C\u002Fh2>\n\u003Cp>\u003Cstrong>Hook pré-commit :\u003C\u002Fstrong> Exécute \u003Ccode>cargo fmt --check\u003C\u002Fcode> et \u003Ccode>cargo clippy\u003C\u002Fcode> avant que Claude Code ne crée un commit.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Hook post-édition :\u003C\u002Fstrong> Après que Claude Code modifie un fichier dans \u003Ccode>\u002Fi18n\u002Flocales\u002F\u003C\u002Fcode>, un hook vérifie que les 10 fichiers de locale ont des ensembles de clés identiques.\u003C\u002Fp>\n\u003Ch2 id=\"serveurs-mcp-tendre-les-capacit-s-de-claude-code\">Serveurs MCP : Étendre les Capacités de Claude Code\u003C\u002Fh2>\n\u003Col>\n\u003Cli>\u003Cstrong>Serveur MCP base de données :\u003C\u002Fstrong> Permet à Claude Code d’interroger directement notre PostgreSQL de développement.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Serveur MCP statut de déploiement :\u003C\u002Fstrong> Se connecte à notre pipeline CI\u002FCD.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch2 id=\"astuces-pour-les-grands-codebases-avec-1m-de-contexte\">Astuces pour les Grands Codebases avec 1M de Contexte\u003C\u002Fh2>\n\u003Cp>\u003Cstrong>Laissez Claude Code explorer.\u003C\u002Fstrong> Ne tentez pas de pré-sélectionner les fichiers à montrer. Décrivez ce que vous voulez et laissez Claude Code utiliser ses outils.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Utilisez CLAUDE.md pour le contexte stable.\u003C\u002Fstrong> Les informations qui ne changent pas entre les sessions vont dans CLAUDE.md.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Découpez les méga-tâches en phases.\u003C\u002Fstrong> Même avec 1M de tokens, une tâche comme « refactorer tout le système d’authentification » bénéficie d’un phasage.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Faites confiance à la boucle agentique.\u003C\u002Fstrong> Ne l’interrompez pas en cours de cycle.\u003C\u002Fp>\n\u003Ch2 id=\"pi-ges-et-solutions\">Pièges et Solutions\u003C\u002Fh2>\n\u003Cp>\u003Cstrong>Piège : Sur-ingénierie.\u003C\u002Fstrong> Solution : Ajoutez « KISS — Gardez les choses simples. Évitez la sur-ingénierie. » à votre CLAUDE.md.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Piège : Contexte périmé dans les longues sessions.\u003C\u002Fstrong> Solution : Démarrez une nouvelle session pour chaque tâche majeure.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Piège : Sortie non-déterministe.\u003C\u002Fstrong> Solution : Utilisez des prompts spécifiques et détaillés.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Piège : Qualité des données de test.\u003C\u002Fstrong> Solution : Révisez toujours les fixtures générées et exécutez la suite de tests complète.\u003C\u002Fp>\n\u003Ch2 id=\"faq\">FAQ\u003C\u002Fh2>\n\u003Ch3>Combien coûte Claude Code au quotidien ?\u003C\u002Fh3>\n\u003Cp>Pour notre équipe de 4 développeurs, nous dépensons environ 200-300\u003Cspan class=\"math math-inline\">\u002Fmois en utilisation API Claude Code. Le plan Max à 20\u003C\u002Fspan>\u002Fmois par développeur est une alternative plus prévisible.\u003C\u002Fp>\n\u003Ch3>Claude Code fonctionne-t-il hors ligne ?\u003C\u002Fh3>\n\u003Cp>Non. Claude Code nécessite une connexion internet pour communiquer avec l’API d’Anthropic.\u003C\u002Fp>\n\u003Ch3>Claude Code peut-il casser notre build ?\u003C\u002Fh3>\n\u003Cp>Oui, mais il détecte la plupart des problèmes lui-même. Environ 90% des builds réussissent du premier coup et 99% après la boucle d’auto-correction.\u003C\u002Fp>\n\u003Ch3>Claude Code convient-il aux développeurs solo ?\u003C\u002Fh3>\n\u003Cp>Absolument. Il sert de second regard pour la revue de code, de base de connaissances pour les conventions du projet, et de multiplicateur de force pour les tâches fastidieuses.\u003C\u002Fp>\n\u003Ch2 id=\"conclusion\">Conclusion\u003C\u002Fh2>\n\u003Cp>Claude Code n’est pas une baguette magique qui écrit votre application. C’est un multiplicateur de force qui excelle dans le raisonnement cross-stack, l’application des conventions et les modifications multi-fichiers fastidieuses. La combinaison de CLAUDE.md pour la mémoire persistante du projet, des hooks pour l’application de la qualité et des serveurs MCP pour l’accès aux outils externes en fait l’outil de développement IA le plus capable que nous ayons utilisé pour le travail en monorepo.\u003C\u002Fp>\n\u003Cp>L’insight clé après 9 mois d’utilisation quotidienne : Claude Code a le plus de valeur non pas pour écrire du nouveau code, mais pour maintenir le code existant — refactoring, migrations, tests et revues.\u003C\u002Fp>\n","fr","b0000000-0000-0000-0000-000000000001",true,"2026-03-28T10:44:42.085746Z","Comment nous utilisons Claude Code pour le développement monorepo Nuxt 4 + Rust","Découvrez comment Open Soft utilise Claude Code pour le refactoring multi-fichiers, l'écriture de migrations, la génération de tests et la revue de code dans un monorepo Nuxt 4 + Rust avec des exemples de workflows réels.","claude code monorepo workflow",null,"index, follow",[22,27,31,35,39],{"id":23,"name":24,"slug":25,"created_at":26},"c0000000-0000-0000-0000-000000000008","AI","ai","2026-03-28T10:44:21.513630Z",{"id":28,"name":29,"slug":30,"created_at":26},"c0000000-0000-0000-0000-000000000012","DevOps","devops",{"id":32,"name":33,"slug":34,"created_at":26},"c0000000-0000-0000-0000-000000000004","Nuxt","nuxt",{"id":36,"name":37,"slug":38,"created_at":26},"c0000000-0000-0000-0000-000000000001","Rust","rust",{"id":40,"name":41,"slug":42,"created_at":26},"c0000000-0000-0000-0000-000000000002","TypeScript","typescript","Ingénierie",[45,51,57],{"id":46,"title":47,"slug":48,"excerpt":49,"locale":12,"category_name":43,"published_at":50},"d0000000-0000-0000-0000-000000000677","Pourquoi Bali devient le hub impact-tech d'Asie du Sud-Est en 2026","pourquoi-bali-devient-hub-impact-tech-asie-sud-est-2026","Bali se classe 16e parmi les écosystèmes startups d'Asie du Sud-Est. Avec une concentration croissante de bâtisseurs Web3, de startups IA durables et d'entreprises eco-travel tech, l'île se forge une identité de capitale impact-tech de la région.","2026-03-28T10:44:49.517126Z",{"id":52,"title":53,"slug":54,"excerpt":55,"locale":12,"category_name":43,"published_at":56},"d0000000-0000-0000-0000-000000000676","Le patchwork de la protection des données ASEAN : checklist de conformité pour les développeurs","patchwork-protection-donnees-asean-checklist-conformite-developpeurs","Sept pays de l'ASEAN disposent désormais de lois complètes sur la protection des données, chacune avec des modèles de consentement, des exigences de localisation et des structures de sanctions différents. Voici une checklist pratique de conformité pour les développeurs.","2026-03-28T10:44:49.504560Z",{"id":58,"title":59,"slug":60,"excerpt":61,"locale":12,"category_name":43,"published_at":62},"d0000000-0000-0000-0000-000000000675","La transformation numérique de 29 milliards de dollars d'Indonesia : opportunités pour les éditeurs de logiciels","transformation-numerique-29-milliards-dollars-indonesia-opportunites-editeurs-logiciels","Le marché des services informatiques d'Indonesia devrait atteindre 29,03 milliards de dollars en 2026, contre 24,37 milliards en 2025. L'infrastructure cloud, l'IA, le e-commerce et les centres de données tirent la croissance la plus rapide d'Asie du Sud-Est.","2026-03-28T10:44:49.469231Z",{"id":13,"name":64,"slug":65,"bio":66,"photo_url":19,"linkedin":19,"role":67,"created_at":68,"updated_at":68},"Open Soft Team","open-soft-team","The engineering team at Open Soft, building premium software solutions from Bali, Indonesia.","Engineering Team","2026-03-28T08:31:22.226811Z"]