Aller au contenu
Quentin Barroin

Étude de cas

Novera Recorder

Enregistrer une réunion Meet, en obtenir un compte rendu structuré par template métier — le tout 100% local.

L’outil interne qui transcrit et résume mes conversations à enjeu — entretiens candidats, briefs clients, débriefs mission — sans qu’aucune donnée audio ou textuelle ne quitte ma machine. Capture depuis Google Meet via une extension Chrome, transcription locale, résumé par template métier.

Rôle
Conception · Développement
En solo
Année
2026
Type
Outil interne · Compte rendu de réunion 100% local
100% local

Aucune donnée ne quitte la machine — pas de transit cloud, pas de logs externes.

Templates métier

  • Par défaut
  • Entretien candidat
  • Brief client
  • Débrief mission

Le défi

Je pilote mon activité de recruteur en multipliant les conversations à enjeu : entretiens candidats, briefs clients, débriefs mission. Mon workflow manuel — enregistreur PC → fichier .wav → script Vosk → copier-coller dans ChatGPT — était lent, fragile (Vosk sans ponctuation produisait des comptes rendus médiocres) et multipliait les alt-tabs.

Pire : des conversations sensibles — rémunérations, parcours candidats, contacts client — transitaient par un cloud tiers, avec le risque de confidentialité associé. Prendre des notes à la main pendant un entretien coupe la qualité d’écoute. Il n’existait ni historique recherchable, ni restitution standardisée selon le contexte.

La solution : un cycle de bout en bout

De l’extension Chrome au compte rendu exporté, le cycle complet s’exécute sur ma seule machine — sans alt-tab pendant la réunion.

Démarrage depuis Meet

Extension Chrome : un clic « Démarrer » sur Google Meet, avec auto-titre depuis le nom du Meet.

Capture 2 pistes

Micro + loopback WASAPI capturés sur deux pistes séparées (Moi / Participants).

Transcript en direct

faster-whisper sur des snapshots toutes les ~20 s, pendant la réunion.

Post-traitement

Au clic « Arrêter » : transcription complète puis merge des locuteurs (Moi / Participants).

Résumé par template

Résumé via Ollama avec un template métier : par défaut, entretien-candidat, brief-client, débrief-mission.

Session exploitable

Dans l’app : titre personnalisable, recherche plein texte, export PDF.

Confidentialité par défaut

Aucune donnée audio ou textuelle ne quitte la machine : pas de transit cloud, pas de logs externes.

Encadrement RGPD

Phrase d’annonce de consentement standardisée en début d’entretien.

Sous le capot

Un backend Python qui tourne sur CPU uniquement (pas de GPU requis), volontairement figé : aucune variable d’environnement, aucune étape de build côté front. Toute la chaîne — capture, transcription, résumé, stockage — vit en local.

PythonFastAPIfaster-whisperOllamaSQLiteChrome Extension

Capture audio

Micro + loopback WASAPI via sounddevice, écriture soundfile, niveau RMS calculé avec numpy. Deux pistes séparées pour distinguer les locuteurs.

Transcription locale

faster-whisper 1.2 (modèle medium, CPU INT8) via ctranslate2. Environ 5 secondes de calcul pour 5 minutes d’audio.

Résumé en local

Résumé généré par Ollama (modèle qwen2.5:7b), entièrement sur la machine, avec un template métier choisi à la fin de la session.

Stockage & recherche

Sessions persistées en SQLite avec recherche plein texte FTS5. Export PDF délégué au navigateur.

API & extension

Backend FastAPI + Uvicorn exposant 16 routes API. Extension Chrome Manifest V3 avec content script injecté sur meet.google.com.

Frontend zéro dépendance

HTML/CSS/JS vanilla : aucun framework, aucune étape de build, aucun CDN. Config volontairement figée, sans variable d’environnement.

Mon rôle : conception et développement, en solo

De l’identification du besoin à la mise en production, j’ai porté Novera Recorder seul : conception du cycle de capture, développement du backend et de l’extension, choix d’une architecture 100% locale par exigence de confidentialité. C’est l’outil que j’utilise pour mes propres entretiens.

Conception

Cycle de capture, templates métier, parcours sans alt-tab.

Développement backend

Capture audio, transcription, résumé, API FastAPI, stockage SQLite.

Extension Chrome

Manifest V3, content script sur Google Meet, démarrage en un clic.

Confidentialité & RGPD

Architecture 100% locale, annonce de consentement standardisée.

Construire un outil local et confidentiel pour mes propres entretiens, c’est mon exigence sur trois plans : la qualité d’écoute (ne plus prendre de notes à la main), la confidentialité des données candidat (rien ne quitte la machine, contrairement à Otter.ai, Tactiq, MeetGeek ou Fathom), et le pragmatisme technique — le bon outil, pas le plus gros : tout en local, sans abonnement, avec un contrôle total sur les templates.