Skip to content

hounfodji/darkroom

Repository files navigation

DarkRoom - Assistant Vocal Interactif

Un assistant vocal interactif développé dans le cadre des journées portes ouvertes du campus Epitech Bénin. Cette application utilise la reconnaissance vocale et la synthèse vocale pour créer une expérience d'interaction naturelle.

Demo DarkRoom

🚀 Fonctionnalités

  • Assistant vocal interactif : Posez vos questions sur le numérique ou Epitech Bénin
  • Reconnaissance vocale en temps réel : Utilise WebRTC pour la capture audio
  • Synthèse vocale : L'assistant répond vocalement à vos questions
  • Interface visuelle immersive : Animations et visualisations en temps réel
  • Détection faciale : Intégration avec MediaPipe et TensorFlow.js
  • Visualisations audio : Barres de parole et animations discales

🛠️ Technologies Utilisées

  • Frontend : Next.js 15, React 19, TypeScript
  • Styling : Tailwind CSS 4
  • Audio : WebRTC API
  • IA/ML :
    • MediaPipe Face Detection
    • TensorFlow.js
  • Animations : Framer Motion
  • Typing Effects : React Simple Typewriter, React Type Animation

📦 Installation

  1. Cloner le repository

    git clone <repository-url>
    cd DarkRoom
  2. Installer les dépendances

    npm install
  3. Lancer le serveur de développement

    npm run dev
  4. Ouvrir dans le navigateur

    http://localhost:3000
    

🏗️ Structure du Projet

DarkRoom/
├── src/
│   └── app/
│       ├── components/
│       │   ├── WebRTCAssistant.tsx    # Assistant vocal principal
│       │   ├── WebcamFaceDetector.tsx # Détection faciale
│       │   ├── DiscVisualizer.tsx     # Visualisations discales
│       │   ├── SpeakingVisualizer.tsx # Barres de parole
│       │   ├── Transcription.tsx      # Effets de typing
│       │   ├── voice-orb.tsx          # Orb vocal
│       │   └── eyes.tsx               # Composant yeux
│       ├── page.tsx                   # Page principale
│       └── layout.tsx                 # Layout de l'application
├── pages/
│   └── api/
│       └── session.ts                 # API de session
└── public/                            # Assets statiques

🎯 Utilisation

  1. Accédez à l'application via votre navigateur
  2. Autorisez l'accès au microphone quand demandé
  3. Posez vos questions sur :
    • Le numérique et la technologie
    • Epitech Bénin et ses formations
    • L'informatique en général
  4. Écoutez les réponses de l'assistant vocal

🔧 Scripts Disponibles

  • npm run dev : Lance le serveur de développement
  • npm run build : Construit l'application pour la production
  • npm run start : Lance l'application en mode production
  • npm run lint : Vérifie le code avec ESLint

🌐 Déploiement

L'application peut être déployée sur Vercel, Netlify ou tout autre plateforme supportant Next.js.

npm run build

📝 Notes de Développement

  • L'application utilise l'API WebRTC pour la capture audio en temps réel
  • La détection faciale est gérée par MediaPipe et TensorFlow.js
  • Les animations sont optimisées avec Framer Motion
  • L'interface utilise un design moderne avec des gradients et des animations fluides

🤝 Contribution

Ce projet a été développé pour les journées portes ouvertes d'Epitech Bénin. Pour toute question ou contribution, contactez l'équipe de développement.

📄 Licence

Projet développé pour Epitech Bénin - Tous droits réservés.


Développé avec ❤️ pour Epitech Bénin

Releases

No releases published

Packages

No packages published