Bonjou
Commencer l'Étude →
⚡ Ingénierie Multi-Modèles · Audio Neural · 526+ Jalons

L'Architecture & l'Ingénierie derrière Bonjou

Une plongée technique exhaustive dans une plateforme bâtie à travers plus de 526 jalons d'ingénierie avec Claude Code, Google Gemini et Antigravity — réunissant un pipeline TTS neuronal hors ligne de 247 108 fichiers audio (4,34 Go) sur Cloudflare R2, 116 leçons de grammaire v2, 351 podcasts multi-voix, des contes interactifs pour enfants et une architecture PHP 8.3 / MySQL respectueuse de la vie privée (Consent Mode v2).

🧠 Claude Code · Google Gemini · Antigravity
☁️ 247 108 Fichiers Audio (4,34 Go) sur Cloudflare R2
🎚️ Supertonic & Piper ONNX · Normalisation EBU R128
📚 116 Leçons v2 (A1–C2) & 1 400+ Activités
🧒 Contes Léo & Léa (2–6 / 7–12 ans) & Guide A4
🔒 RGPD Consent Mode v2 · GTM · GA4 · Clarity
247 108 Clips Audio Neuraux (4,34 Go R2)
526+ Jalons d'Ingénierie Documentés
351 Épisodes de Podcasts (759 Jobs)
116 Leçons v2 Interactives (1 400+ Act.)
16 Voix Auditées (PER / IPA / LUFS)
101 Verbes × 10 Temps (21 400+ Items)

Architecture Système de Bout en Bout

De l'ingénierie multi-modèles locale (Claude Code, Gemini, Antigravity, pipelines ONNX & alignement Whisper/wav2vec2) jusqu'au déploiement continu Hostinger Git, au CDN Cloudflare R2 et à la télémétrie RGPD Consent Mode v2.

1. INGÉNIERIE IA & PIPELINE 2. SERVEUR HOSTINGER (PHP 8.3 & PERSISTENCE) 3. CLOUDFLARE R2 EDGE & PASSERELLE IA 4. CLIENT & RGPD CONSENT V2 🧠 Claude Code & Gemini + Antigravity · 526+ Jalons Architecture, E2E Playwright & v2 Anti-EOF & Refactoring Chirurgical 🎙️ Usine Audio ONNX Locale Supertonic (8 steps) + Piper VITS Whisper Turbo + wav2vec2 PER EBU R128 (-23,5 LUFS) & mp3gain 89 dB 🐙 Git Webhook & rclone R2 Push main → Hostinger Auto-Pull audio-render-pipeline.js → R2 ⚡ Hostinger Apache 2.4 public_html/ + Clean URLs Inodes Libérés (Audio déporté R2) 🛡️ PHP 8.3 & Sécurité CSRF Strict + 5 Couches Quotas session_write_close() (M345/M346) 📦 Persistence Hybride MySQL + Fallback JSON + Idempotence IA api/db.php · storage/ JSON Fallback · storage/ai_idem/ SHA-256 (TTL 15m, X-AI-Replay: 1) ☁️ Cloudflare CDN & R2 audio.bonjou.fr (Zero-Egress) 247 108 fichiers · 4,34 Go · CORS Shards FNV-1a (tts/, tts-slow/, podcasts/) 🤖 Passerelle IA (ai-proxy) IA rapide + IA approfondie Notation Serveur DELF/DALF (M92) Polly Generative (Spend Guard ≤ 500) 🦊 Suite Pédagogique 116 Leçons v2 · 351 Podcasts Contes Léo & Léa (Garde 90 %) Pilote C2 Boss · Renard & Hermeline 🎧 Cascade Audio 4 Niveaux ① Voix R2 → ② Doublure Piper ③ Piper WASM (94 Mo) → ④ Speech Sync JSON Mot/Ligne (1.0x / 0.88x) 🔒 Consent Mode v2 & Analytics Bannière #bj-consent (denied par défaut) GTM-NBVZ622M · GA4 Fetch Hook Microsoft Clarity (Opt-In strict)

Les 6 Piliers Technologiques de la Plateforme

Une architecture hybride combinant ingénierie assistée par IA multi-modèles, synthèse vocale neurale hors ligne, distribution edge Cloudflare R2 et conformité RGPD stricte.

🧠

Ingénierie Multi-Modèles : Claude Code, Gemini & Antigravity

Contrairement à un simple wrapper LLM, Bonjou est le fruit de plus de 526 jalons d'ingénierie développés intensivement avec Claude Code (architecture backend, pipelines audio, audits de sécurité, tests E2E Playwright), Google Gemini et Antigravity (rédaction du corpus grammatical v2 et gamification), complétés par des modèles locaux spécialisés (faster-whisper large-v3-turbo et wav2vec2-xlsr-53).

Claude Code Google Gemini 2.0 Flash Antigravity Évaluation IA approfondie Whisper & wav2vec2
☁️

Corpus Audio de 247 108 Fichiers (4,34 Go) sur Cloudflare R2

Pour dépasser la limite d'inodes d'hébergement partagé Hostinger et la limite Git de 5 Go, les 247 108 clips vocaux pré-générés (4,34 Go) sont déportés sur Cloudflare R2 (audio.bonjou.fr) sans frais de bande passante (Zero-Egress). Chaque phrase est adressée par son empreinte déterministe fnv1a(cleanForHash(text)) répartie en shards de 2 caractères (audio/tts/ et audio/tts-slow/).

Cloudflare R2 (4,34 Go) 247 108 Fichiers MP3 Sharding FNV-1a Zero-Egress & CORS
🎙️

Pipeline TTS Neural Multi-Moteurs : Supertonic & Piper ONNX

La synthèse vocale combine Supertonic ONNX (44,1 kHz, 8 steps — F4 Hélène, F2 Inès, F1 Sarah, F5 Emily, M3 Julien, M1 Alex, M2 James, M5 Hugo), Piper ONNX VITS (Marie fr_FR-siwis-medium, Thomas fr_FR-tom-medium, Pierre & Jessica fr_FR-upmc-medium), Amazon Polly Generative (Florian & Ambre avec garde-fou SPEND_GUARD_LIMIT = 500), ainsi que des auditions ElevenLabs, Audio8, edge-tts et Kitten.

Supertonic ONNX Piper ONNX VITS Polly Generative Piper WASM Navigateur ElevenLabs / Audio8
🎚️

Normalisation EBU R128 / LUFS & Cascade Résiliente à 4 Niveaux

L'audit acoustique (tools/audio-loudness/audit.py) a révélé un écart de 11 LU entre les voix brutes (-14,4 à -25,5 LUFS). Le pipeline level.py ajuste chaque trame MP3 sans perte via mp3gain (cible 89 dB / -23,5 LUFS, écart réduit à 1,5 LU sans ré-encodage ni écrêtage). Côté client, Nav.speakStored() applique une cascade à 4 niveaux : ① Voix choisie → ② Doublure Piper de même genre → ③ Synthèse WASM locale → ④ Web Speech API.

EBU R128 (-23,5 LUFS) mp3gain 89 dB Sans Perte Écart 11 LU → 1,5 LU Cascade 4 Niveaux
🔒

Analytique Respectueuse de la Vie Privée & Consent Mode v2

La télémétrie repose sur Google Tag Manager (GTM-NBVZ622M), Google Analytics 4 (GA4) (suivi automatique des événements API activity_start, activity_complete, login, sign_up) et Microsoft Clarity (cartes de chaleur et sessions). Conformément au RGPD, Google Consent Mode v2 (#bj-consent) verrouille tous les stockages sur denied par défaut avec ads_data_redaction: true jusqu'au consentement explicite.

Consent Mode v2 (#bj-consent) GTM-NBVZ622M & GA4 Microsoft Clarity Opt-In Zéro Publicité
🛡️

Architecture Hybride PHP 8.3, MySQL & Idempotence IA

Backend sans dépendance lourde : persistance MySQL (api/db.php) avec bascule automatique sur fichiers JSON (storage/), libération anticipée du verrou de session (session_write_close() M345/M346) avant tout appel IA amont, protection CSRF stricte, limiteur de débit à 5 couches et cache d'idempotence IA SHA-256 (storage/ai_idem/, TTL 15 min, X-AI-Replay: 1) évitant toute double facturation.

PHP 8.3 + MySQL / JSON Cache storage/ai_idem/ 5-Layer Rate Limiting Session Lock Release

Pipeline Vocal Multi-Moteurs & Catalogue des Voix

247 108 fichiers audio (~4,34 Go) générés hors ligne, alignés au mot et à la ligne en JSON, normalisés selon la norme broadcast EBU R128 (-23,5 LUFS) et servis depuis Cloudflare R2.

Phase 1 · Génération & Vitesse

Supertonic, Piper & Polly

Rendu multi-vitesses (1.0x normal, 0.88x slight slow, 0.6x shadowing slow via LENGTH_SCALE / rubberband) et styles d'enchaînement podcast (natural, tight, overlap, random) avec cartes JSON de synchronisation mot/ligne.

Phase 2 · Audit IPA & Whisper

Évaluation de 16 Voix

Banc d'essai automatisé (tools/voice-hub/) mesurant le WER via faster-whisper large-v3-turbo, le taux d'erreur phonémique IPA (PER 5,5 %–8,9 %) via wav2vec2-xlsr-53-espeak-cv-ft et la fréquence fondamentale F0 (librosa.yin).

Phase 3 · Loudness EBU R128

Normalisation Sans Perte

Audit (audit.py) et nivellement (level.py) via mp3gain -r à 89 dB (podcasts mixés à -23,5 LUFS via VOICE_GAIN_DB), réduisant l'écart inter-voix de 11 LU à 1,5 LU sans ré-encodage ni écrêtage (0 dBFS).

Phase 4 · Edge R2 & Cascade

Shards FNV-1a & 4 Niveaux

Déploiement audio-run.js vers Cloudflare R2 (audio.bonjou.fr) et résolution client à 4 niveaux : ① Voix choisie → ② Doublure Piper de même genre (marie/thomas) → ③ Piper WASM navigateur (94 Mo) → ④ Web Speech API.

Moteur / Architecture Voix & Presets Officiels Rôle Pédagogique & Distributions Podcasts Spécifications Acoustiques & Coût
Supertonic ONNX
44.1 kHz · 8 steps · 0.95x
F4 Hélène, F2 Inès, F1 Sarah, F5 Emily, M3 Julien, M1 Alex, M2 James, M5 Hugo Voix principales des 351 podcasts (Cast A : Inès & Pierre · Cast B : Hélène & Julien · Tables rondes à 4–5 voix), Contes enfants (Hélène, Inès) et lecture (Sarah, Hugo). 100 % gratuit hors ligne (CPU) · PER IPA 6,5 %–8,9 % · Compensé +0,8 à +1,8 dB (-23,5 LUFS).
Piper ONNX VITS
siwis / tom / upmc
Marie (fr_FR-siwis-medium), Thomas (fr_FR-tom-medium), Pierre & Jessica (fr_FR-upmc-medium #1/#0) Cast C classique (Marie & Thomas), co-animateur Cast A (Pierre), doublures universelles de secours (étape ②), narration enfants (Marie) et synthèse live dans le navigateur (js/piper-tts.js). 100 % gratuit hors ligne & WASM · PER IPA n°1 (Marie 5,5 %) · Vitesse 0,09s CPU par seconde audio.
Amazon Polly Generative
AWS Cloud Neural
Florian (m) & Ambre (f) Corpus pré-généré de ~29 000 clips par voix pour les drills et le shadowing (generate-slow.js à 0,6x via ffmpeg rubberband), doublés automatiquement par Thomas/Marie. Payant (~30 $/1M car.) · Protégé par double verrou : SPEND_GUARD_LIMIT = 500 et plafonds M19.
Bancs d'Audition & Labo
ElevenLabs · Audio8 · Kitten · edge-tts
Renard & Hermeline (ElevenLabs), Audio8 0.6B INT4 (clones zéro-shot), edge-tts / Kitten Répliques expressives et idiomatiques des mascottes sur l'accueil et la page À propos, auditions comparatives de prosodie et bancs de test phonétiques. Fichiers statiques pré-rendus (mascottes) et modèles expérimentaux évalués hors production.

Fonctionnalités Phares de la Suite Bonjou

De la maternelle (2–6 ans) jusqu'à la maîtrise académique C2 et aux certifications officielles DELF/DALF/TEF/TCF.

📖

116 Leçons de Grammaire v2 (A1–C2) & 1 400+ Activités

Cursus intégral A1 à C2 propulsé par le lecteur pédagogique séquentiel en 6 étapes (js/grammar/lesson-player.js) : mise en scène dialoguée, découverte inductive par tri (Notice), règles et pièges francophones, plus de 1 400 activités adossés au corpus avec modales 📐 Structure, indices 💡 Hint et barre d'accents partagée.

116 Leçons v2 (A1–C2) lesson-player.js (6 Étapes) 1 400+ Activités Évaluation Déterministe
🎙️

351 Podcasts Multi-Cast & Pilote Gamifié en 8 Étapes

Bibliothèque de 351 épisodes (duos, trios, tables rondes à 4–5 voix, vitesses 1.0x & 0.88x) en 3 distributions (Cast A : Inès & Pierre, Cast B : Hélène & Julien, Cast C : Marie & Thomas), couronnée par le pilote C2 /podcast-pilot en 8 étapes verrouillées avec synchronisation centrée, shadowing, débat littéraire et Combat de Boss en 3 questions.

351 Épisodes Casts A / B / C /podcast-pilot (8 Étapes) Boss Round 3 Cœurs
🧒

Contes Enfants Léo & Léa & Guide Pédagogique A4

Expérience gamifiée (/children-stories) avec sélecteur d'âge en amont : mode Petits Aventuriers (2–6 ans) avec Grand Puzzle Tactile 4 Pièces vs mode Grands Explorateurs (7–12 ans) en 6 étapes et Théâtre de rôle, mascottes Renard 🦊 & Hermeline 🦔, garde d'écoute stricte à ≥ 90 % (anti-avance rapide & focus) et Guide Pédagogique A4 imprimable (/children-stories-teachers-guide).

2–6 ans (Grand Puzzle) 7–12 ans (6 Étapes) Garde d'Écoute ≥ 90 % Guide Enseignant PDF A4
🎓

Simulateurs Officiels DELF, DALF, TEF Canada & TCF

Centre d'évaluation certifiant chronométré en 4 épreuves (Compréhension Orale, Compréhension Écrite, Production Écrite, Production Orale — A1 à C1) avec seuil éliminatoire officiel (< 5/25), notation IA vérifiée côté serveur (lib/assessment-ai-grading.php), test de placement adaptatif et module speaking-tasks 100 % enregistré au microphone.

DELF / DALF / TEF / TCF 4 Sections Chronométrées Notation IA Serveur Diagnostic Post-Examen
✍️

Dictée Interactive, Labo d'Écoute, Lecture & Écriture

Dictée Interactive (1 160 phrases avec diff mot-à-mot serveur), Laboratoire d'Écoute à l'aveugle, Lecture (170+ textes + 10 Story Arcs biographiques continus de A1 à C1 avec glossaire vocal instantané au clic), Studio d'Écriture Guidée (72 sujets, synthèse, combinaison de phrases, journal) et Culture & Idiomes.

Dictée (1 160 Phrases) 170+ Lectures & 10 Story Arcs Studio d'Écriture (72 Sujets) Écoute Active
🗣️

Conjugaison 101 Verbes, SRS, Shadowing & Phonétique

Entraîneur Vue 3 sur 101 verbes × 10 temps (21 400+ phrases générées sur 6 modes), Flashcards SRS Leitner inter-outils, Laboratoire de Phonétique & Liaisons (paires minimales, voyelles nasales), Shadowing Studio (1.0x / 0.6x + courbe de progression) et Suite d'Aisance Orale (tool-1 à tool-7 : Frame Vault, Circonlocution, Retelling, Opinion, Coach IA, Roleplay).

101 Verbes · 21 400+ Items SRS Leitner & Flashcards Labo Phonétique & Liaisons Shadowing & Suite Orale

Grandes Étapes d'Ingénierie & Jalons Majeurs

Plus de 526 jalons documentés dans docs/CHANGELOG.md et docs/STATUS.md, validés par des suites de tests unitaires et Playwright E2E.

Jalons M1–M280 · Fondations Full-Stack & Centre d'Examens (Claude Code & Gemini)

Conjugaison 101 Verbes, Suite Orale, Lecture/Écriture & Certifications DELF/DALF

Construction avec Claude Code et Google Gemini du socle PHP 8.3 + MySQL / JSON fallback, de l'entraîneur Vue 3 (101 verbes × 10 temps, 21 400+ phrases), de la suite d'aisance orale (tool-1 à tool-7, shadowing, roleplay), de la piste Lecture/Écriture (170+ textes, 10 Story Arcs, dictée 1 160 phrases) et du Centre d'Évaluation A1–C1 à notation IA vérifiée côté serveur.

M1–M40 (Drills & Oral Suite) M40–M90 (Reading, Dictée & SRS) M92–M95 (DELF/DALF Server AI Grading) M100+ (Phonetics & Speaking Tasks)
Jalons M285–M380 · Usine Audio Neurale, Cloudflare R2 & Résilience Backend

247 108 Fichiers sur Cloudflare R2, Supertonic/Piper ONNX, EBU R128 & Cache Idempotence

Intégration des moteurs hors ligne Piper ONNX et Supertonic ONNX (plus Piper WASM dans le navigateur), nivellement sans perte mp3gain à 89 dB / -23,5 LUFS (écart réduit de 11 LU à 1,5 LU), déport des 247 108 fichiers (4,34 Go) sur Cloudflare R2 (audio.bonjou.fr), libération anticipée du verrou de session PHP (M345/M346) et cache d'idempotence IA SHA-256 (storage/ai_idem/, M378).

M285 (Piper ONNX & WASM) M309–M325 (247k Clips → Cloudflare R2) M345–M346 (Session Lock Release) M378 (AI Idempotency SHA-256)
Jalons M381–M490 · 275 Podcasts Multi-Cast, Voice Hub IPA & Consent Mode v2

Catalogue de 275 Podcasts (759 Jobs), Banc d'Audit Whisper/wav2vec2 & RGPD

Production de 275 épisodes de podcasts en duos, trios et tables rondes (Casts A/B/C, styles d'enchaînement natural, tight, overlap, random et vitesses 1.0x / 0.88x), création du Voice Hub évaluant 16 voix via faster-whisper large-v3-turbo et wav2vec2 (PER IPA), et déploiement de Google Consent Mode v2 (#bj-consent, GTM, GA4 et Microsoft Clarity en opt-in strict).

M420–M425 (Overlap Mixes & Roundtables) Voice Hub (16 Voices PER/WER Audit) RGPD Consent Mode v2 (GTM/GA4/Clarity)
Jalons M491–M519 · 66 Leçons de Grammaire v2 (1 400+ Act.) & Mascottes Adaptatives

Lecteur Pédagogique en 6 Étapes (A1–C2) & Duo Renard 🦊 / Hermeline 🦔

Refonte complète du cursus grammatical en 66 leçons interactives v2 (A1 à C2) propulsées par js/grammar/lesson-player.js avec 1 400+ activités, modales de structure, indices et photos Pexels par étape. Création des mascottes vectorielles Renard et Hermeline (5 postures SVG, voix ElevenLabs, favicons dynamiques et bandeau HUD .gx-strip unifié).

M514–M515 (66 Leçons v2 & Hints/Structure) PR #205–#225 (Renard, Hermeline & HUD) M523 (GrammarPlayer Resilience · 728 Tests)
Jalons M520, M524 & M525 · Pilote de Podcast C2 Gamifié en 8 Étapes

Pilote « Traduire l'intraduisible », Synchronisation Centrée & Combat de Boss

Conception du pilote gamifié en 8 étapes verrouillées (/podcast-pilot) : 67 répliques synchronisées au centre de l'écran, 20 locutions, 10 quiz, puzzle cloze, shadowing, atelier débat et Combat de Boss en 3 questions (100 PV, Double XP) avec synchronisation dynamique des distributions authentiques (Voix A Inès & Pierre, Voix B Hélène & Julien, Voix C Marie & Thomas).

M520 (8-Stage C2 Pilot & Boss Round) M524 (Mobile Transcript & Centered Sync) M525 (Authentic Casts Inès & Pierre)
Jalons M521, M522 & M526 · Contes Enfants Léo & Léa & Guide Pédagogique A4

Modes d'Âge (2–6 / 7–12 ans), Garde d'Écoute ≥ 90 % & Guide Enseignant Imprimable

Lancement de « Léo et Léa : Le Secret de la Forêt Enchantée » (/children-stories) avec narration féminine hors ligne (Marie, Hélène, Inès), sélecteur d'âge en amont (Petits Aventuriers 2–6 ans avec Grand Puzzle 4 pièces vs Grands Explorateurs 7–12 ans en 6 étapes), garde d'écoute stricte à ≥ 90 % et Guide Pédagogique A4 PDF (/children-stories-teachers-guide) pour la classe (TBI) et l'enseignement en ligne.

M521 (Léo & Léa 6-Stage Quest) M522 (Teacher's Guide & Printable A4 PDF) M526 (2–6 / 7–12 Age Modes & 90% Guard)
« Bienvenue sur la page d'architecture ! Moi et mon acolyte veillons sur chaque ligne de code et chaque nuance de la langue française ! »