Snoopi
A desktop meeting assistant for capturing conversations and working with their context. It brings transcripts, summaries, follow-up drafts, and searchable meeting history into an Electron interface.
- React
- TypeScript
- Electron
- Whisper

What I built
I built Snoopi to keep the useful parts of a conversation available after the meeting ends. Its transcript, summary, and follow-up views share meeting context, while the desktop runtime handles audio capture and storage.
Engineering decisions
- Streaming with a fallback
- The listening service first attempts streaming transcription using temporary AssemblyAI tokens. If that connection is unavailable, it can fall back to chunked Whisper transcription instead of tying the entire workflow to one transport.
- Audio files outside browser storage
- The desktop runtime writes recordings through Electron IPC while meeting metadata stays separate. This avoids keeping large base64 audio payloads in local storage.
- Search the conversation's context
- Transcript chunks retain speaker metadata and can be indexed for similarity search. Transcription and embedding providers may process data remotely; local storage does not mean that all AI processing happens on the device.