Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cabin Chat

Voice-first multi-AI chat built for big screens — especially Tesla’s in-car Chromium browser with microphone support.

Talk or type. Replies from OpenAI, Claude, Gemini, or xAI Grok. Optional browser TTS or ElevenLabs.

Quick start

npm install
npm start

Open http://localhost:3000, pick a provider in Settings, save an API key (or set env vars), then tap Talk.

Environment variables

Set these for local (.env.local) or on Vercel (Project → Settings → Environment Variables):

Variable Required Purpose
OPENAI_API_KEY One provider key OpenAI / ChatGPT
ANTHROPIC_API_KEY One provider key Claude
GOOGLE_API_KEY One provider key Gemini
XAI_API_KEY One provider key Grok
PREFERRED_PROVIDER Optional openai, claude, gemini, or xai
TTS_PROVIDER Optional browser (default) or elevenlabs
ELEVENLABS_API_KEY Optional Premium TTS
ELEVENLABS_VOICE_ID Optional Default ElevenLabs voice
PORT Optional Local server port (default 3000)

On Vercel, prefer setting keys in the dashboard. The in-app Settings save updates keys for the current serverless instance only (filesystem is read-only).

Tesla tips

  • Use HTTPS (Vercel production URL) so microphone permissions work
  • Allow mic access when Chromium prompts
  • Park before long chats; keep interactions short while driving
  • Prefer Auto-speak + browser TTS for hands-free replies

Stack

  • Vanilla HTML / CSS / JS
  • Node.js + Express
  • Web Speech API (recognition)
  • Deployable on Vercel as a Node serverless function

Scripts

  • npm start — production server
  • npm run dev — nodemon

About

Cabin Chat — voice-first multi-AI chat optimized for Tesla in-car Chromium

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages