The problem with Otter.ai
Every meeting notes tool I've tried asks for a credit card, demands a signup, or quietly ships your conversations to a cloud server. Otter.ai is great — if you're okay paying $10/month and handing over your meeting data.
I wanted something simpler: paste a transcript or hit record, get a summary, and know that nothing was sent anywhere.
Building it client-side
The whole tool is two HTML files and a JavaScript file. No build step, no framework, no API key.
Voice recording with Web Speech API
const recognition = new SpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;
recognition.onresult = (event) => {
liveTranscript = Array.from(event.results)
.map(r => r[0].transcript)
.join(' ');
};
The browser handles the audio. No server call. No microphone permission for a third party.
Extractive summarization in pure JS
No LLM needed. I used a classic approach: score each sentence by word frequency (excluding stop words), give bonus points to the first and last sentences, then pick the top 30%.
// ponytail: simple extractive summarizer — no external dependencies
const stopWords = new Set(['the','a','an','is','are','was','were','of','at','by','for',
'with','about','to','from','in','on','and','or','but','it','this','that','they','their']);
function summarize(text) {
const sentences = text.split(/[.!?]\s+/).filter(s => s.trim().length > 10);
// Score each sentence by keyword frequency…
// Pick top 30%, reorder by original position
}
That's it. The summary is generated entirely in the user's browser. Zero latency, zero cost, zero data leaving the machine.
What runs on the server?
Nothing. Two static HTML files served from nginx. The same files work from file:// or any static host. There is no backend, no database, no API endpoint.
The tradeoffs
- Good: zero latency, zero cost to operate, fully offline after first load, privacy-preserving by architecture
- Okay: the summarizer is extractive (picks key sentences), not abstractive (no LLM rewriting). For most meetings, it's more than enough.
- Known: Web Speech API isn't supported in Safari. Paste mode works everywhere.
Try it
https://tools.jackgreen.top/ai-meeting-notes-summarizer/
Free forever. No signup. No watermark.
Top comments (0)