Your transcription ghost friend. Voice-to-text that doesn't suck.
- ⚡ Instant Start: Web Speech API for 0ms latency (Chrome/Edge)
- 🔒 Privacy Mode: 100% offline transcription with Whisper
- 🤖 Auto Mode: Let TalkType choose the best option for you
- Smart Model Selection: Automatically picks optimal Distil-Whisper model based on your device
- 👻 Ghost Personality: Animated companion with 4 themes (peach, mint, bubblegum, rainbow)
- 📱 PWA Installable: Works offline, installs like a native app
- 🎨 Beautiful Design: Pastel-punk aesthetic with smooth animations
- 📋 Quick Copy: One-click copy to clipboard
- 100% Private: All transcription happens locally (in Privacy mode)
- Distil-Whisper Models: 6x faster, 50% smaller than regular Whisper
- WebGPU Ready: Future-proofed for 10-100x speed improvements
- No Subscriptions: Free forever, no accounts, no data collection
Once you've created a project and installed dependencies with npm install (or pnpm install or yarn), start a development server:
npm run dev
# or start the server and open the app in a new browser tab
npm run dev -- --open🔐 New: the first time you trigger any Gemini-powered feature, the browser will prompt you for the
API_AUTH_TOKENfrom.env. The token is only used to open an HttpOnly session cookie so random clients can’t drain your quota.Set
API_AUTH_TOKENandAPI_COOKIE_SECRET(any 32+ char random string) in your.env, and tweakAPI_RATE_LIMIT,API_RATE_WINDOW_MS, orAPI_SESSION_TTL_MSif you need different defaults.
We ship with @sveltejs/adapter-netlify and a netlify.toml that points Netlify at the correct build output. To deploy:
- Install deps:
npm install - Set environment variables in Netlify → Site settings → Environment:
VITE_GEMINI_API_KEYAPI_AUTH_TOKENAPI_COOKIE_SECRET(32+ random chars)- Optional:
API_RATE_LIMIT,API_RATE_WINDOW_MS,API_SESSION_TTL_MS,MAX_UPLOAD_BYTES,API_COOKIE_SECURE=true
- Build command:
npm run build - Publish directory: Netlify auto-detects
.svelte-kit/output/clientvia the adapter (no manual override needed)
Hit “Deploy” and Netlify will generate the serverless functions + static assets automatically.
To create a production version of your app:
npm run buildYou can preview the production build with npm run preview.
We use Lighthouse CI to maintain high performance, accessibility, and best practices standards.
# Run Lighthouse CI tests
npm run lighthouseThis will:
- Build the production version of the app
- Run Lighthouse audits against key metrics
- Generate reports in the
lighthouse-reportsdirectory
- Performance: 85+
- Accessibility: 90+
- Best Practices: 85+
- SEO: 90+
Failing these thresholds will cause warnings or errors in the CI process. We prioritize accessibility with stricter error thresholds.