Jarvis is a voice-first AI assistant with multiple conversation modes such as pote, coach, psychologue, prof, medecin, and traducteur.
src/contains the Vite + React frontend.Jarvis_Backend/contains the Express + WebSocket backend.- The frontend records the user's voice and sends audio to the backend.
- The backend sends that audio to Gemini for understanding and response generation.
- The backend then sends the Gemini reply to Gemini TTS and returns spoken audio to the frontend.
- The UI does not display the transcription or model text reply.
- Create
Jarvis_Backend/.envfromJarvis_Backend/.env.example. - Add your Gemini API key as
GEMINI_API_KEY. - Start the backend:
cd Jarvis_Backend
npm start- Start the frontend:
npm run dev- The frontend expects the backend WebSocket at
ws://localhost:3000by default. - For deployment, set
VITE_BACKEND_WS_URLto your production WebSocket URL.
- Conversation memory is kept in backend memory per session and trimmed to the last 20 messages.
psychologueandmedecinmodes include guardrails so Jarvis stays supportive without pretending to be a licensed professional.- The current implementation is optimized for a strong local demo and can later be upgraded to Gemini Live API for lower-latency streaming speech.