Voice to Notes, Instantly
Record conversations, meetings, and ideas.
Resonate transcribes your audio into clear, structured notes and key insights.
- Record - Capture microphone and system audio simultaneously
- Transcribe - Local speech-to-text via bundled Whisper (offline, private)
- Summarize - AI-powered meeting notes, action items, and summaries via configurable LLM endpoints (OpenAI, Anthropic, or custom)
- Organize - Notebooks, drag-and-drop, tabs, and workspace cards
- Action Items - Auto-extracted tasks with assignees, checkboxes, and markdown
- Speaker Detection - Automatic speaker turn detection with renameable labels
- Export - Download transcripts, summaries, and action items as Markdown
- Mini Window - Pop-out recording widget with always-on-top pin
- Dark & Light Themes - Brand-consistent UI with Resonate color palette
- Tutorial - Built-in interactive walkthrough with example data
git clone https://github.com/ghost-ng/Resonate.git
cd Resonate
npm install
npm startNote: This repo uses Git LFS for the Whisper model file (~142 MB). Install Git LFS before cloning:
git lfs install
Whisper binaries and the base.en model are bundled in the repo under resources/whisper/ — no downloads needed. Works fully offline.
Configure your AI endpoint in Settings > AI Endpoint:
| Provider | Endpoint | Notes |
|---|---|---|
| OpenAI | https://api.openai.com |
Requires API key |
| Anthropic | https://api.anthropic.com |
Requires API key |
| Local (Ollama, LM Studio) | http://localhost:11434/v1 |
No key needed |
npm start # Start in dev mode with hot reload
npm run lint # Run ESLint
npm test # Run tests# Package (creates portable app in out/)
npm run package -- --arch=x64 --platform=win32
# Build installer (creates Squirrel installer)
npm run make -- --arch=x64 --platform=win32The packaged app will be in out/Resonate-win32-x64/.
This project uses better-sqlite3 and native-recorder-nodejs which require native compilation. If you encounter build issues:
# Rebuild native modules for Electron
npx electron-rebuildAll external dependencies are bundled in the repo:
- Whisper binaries and model are in
resources/whisper/(tracked via Git LFS) resources/whisper/is bundled into the app viaextraResourcein forge config- Native modules (
better-sqlite3,native-recorder-nodejs) are rebuilt for Electron - Run
npm run maketo create the installer — works fully offline
src/
main/ # Electron main process
db/ # SQLite database, migrations, repositories
ipc/ # IPC handlers
services/ # Audio capture, STT, AI summary, process monitor
stt/ # Speech-to-text engines (Whisper)
preload/ # Electron preload script
renderer/ # React UI
components/ # UI components
stores/ # Zustand state stores
hooks/ # React hooks
lib/ # Utilities and formatters
shared/ # Types and constants shared between processes
| Layer | Technology |
|---|---|
| Framework | Electron 41 |
| Frontend | React 19, TypeScript, Tailwind CSS 4 |
| State | Zustand |
| Database | SQLite (better-sqlite3) |
| STT | whisper.cpp (local) |
| AI | OpenAI / Anthropic API (configurable) |
| Build | Electron Forge, Vite |
| Audio | native-recorder-nodejs |
MIT
