◊ Your meetings.
Your machine.
Your notes.
/$250M Series B raised for a wrapper around 3 browser APIs/ /this is the same thing/ /£0/ /forever/
FallScribe records, transcribes, and summarises your meetings — entirely on your device. The audio never uploads. The transcript never uploads. The summary never uploads. The whole thing is a 1000-line HTML file. Free forever. MIT. Fork it.
"An agent with agency means you have none.
The tool assists. You press the button."
— Thomas Frumkin, on sovereign AI
The recorder
Click record. Speak. Click stop. The audio stays in your browser. The transcript appears live. Nothing uploads.
Transcription engine: Web Speech API (built-in, free) · Chrome/Edge desktop · live captions
The transcript
Live as you speak. Editable when you stop. Paste or type if you uploaded a recording.
The summary engine
Click summarise. A small on-device LLM (WebLLM Llama-3.2-3B, ~2GB cached once) or your own API key (Claude, OpenAI) produces: key points, decisions, action items, follow-ups, open questions.
/awaiting transcript/
Session library
Saved meetings live in your browser's IndexedDB. Nothing leaves your device unless you choose to export.
Granola vs FallScribe
Granola raised $43M Series B at a ~$250M valuation (Lightspeed, May 2025) for an AI notepad that captures, transcribes, and summarises meetings. The technology is three free browser APIs in a trenchcoat.
| Capability | Granola | FallScribe |
|---|---|---|
| Audio capture | MediaRecorder API (browser-native) | MediaRecorder API (browser-native) |
| Transcription | cloud Whisper-style STT | Web Speech API (built-in) + optional whisper.cpp WASM |
| Summarisation | cloud GPT-4 call | WebLLM Llama-3.2-3B (on-device) or BYOK |
| Persistence | their server | your IndexedDB |
| Audio leaves your device | yes (to their server) | no (browser only) |
| Transcript leaves your device | yes (stored on their server) | no |
| Price | $18/user/month | £0 forever |
| Open source | closed | MIT · 1 HTML file |
| Works offline | no | yes (after first WebLLM cache) |
| You can fork it | no | yes |
| Konomi-signed provenance | no | yes · Ed25519 per session |
This is not a Granola hit-piece. Granola is a good product. The point is that a $250M valuation for the wrapper layer indicates the wrapper layer is being priced like infrastructure. It's not infrastructure — the infrastructure is in the browser. The wrapper should be free.
How it works · 4 standard browser APIs
1. MediaRecorder
Built into every Chromium / Firefox / Safari since 2017. Captures your microphone stream as WebM/Opus. Audio bytes stay in browser memory. No upload.
2. SpeechRecognition (Web Speech API)
Built into Chrome/Edge desktop. Streams audio to the browser's STT engine, returns text in real time. Free. No API key. Optional swap to whisper.cpp WASM for full offline.
3. WebLLM (Llama-3.2-3B Instruct)
On-device LLM via mlc-ai/web-llm. ~2GB download cached once. Summarises the transcript locally. No tokens billed. No data leaves.
4. IndexedDB
Per-session storage in the browser. Sessions, transcripts, summaries, signatures all kept locally. Export to JSON whenever you want a backup.
The manifesto
The browser already has audio capture. The browser already has speech-to-text. The browser already has local LLM execution. The browser already has persistent storage.
A meeting-notes app is four browser APIs in a sensible order. Four.
The reason $250M flowed into a wrapper around those four APIs is not because the wrapper is hard. It's because the average buyer doesn't know the APIs exist and the average builder thinks the wrapper is worth pricing like SaaS.
Both of those things stop being true once a free open-source version ships.
The conversation in your last meeting belongs to you. The transcript belongs to you. The summary belongs to you. The training-data uplift belongs to you. None of it should travel to anyone's server for the privilege of writing the notes down.
FallScribe is what happens when you connect four browser APIs in the order that meets the user's interest instead of the vendor's.
For the people. Not the few.
FAQ
Does the Web Speech API really keep my audio on my device?
In Chrome and Edge desktop, the Web Speech API streams audio to Google's STT server for transcription. That's a real caveat — if you want 100% offline, drop in transformers.js Whisper or whisper.cpp WASM. The audio still never goes to Granola's (or anyone else's) servers via FallScribe. We make that swap easy to do — the engine selector is one line to extend.
Does WebLLM actually work for meeting summarisation?
Llama-3.2-3B-Instruct does a perfectly serviceable summary of a typical 30-minute meeting. It's not GPT-4. For higher fidelity, BYOK Claude or OpenAI · the API key is stored in your browser, the call goes directly from your browser to the provider, never via any FallScribe server (there is no FallScribe server).
Will my team trust this enough to switch?
The trust story is the inverse of Granola's. Granola asks you to trust that they handle your conversations responsibly. FallScribe asks you to trust your browser's existing security model. Open the HTML in a text editor; the entire code base is auditable in 15 minutes. Fork the repo; you can change anything. Run it from a USB stick; you don't even need internet after the first WebLLM load.
What's the catch?
No catch. MIT licence. Single HTML file. Free forever. The author (Simon Gant) makes money from custom builds for businesses that want a branded fork — see AI Native Solutions — but the core tool is and will remain free.
Why does this exist?
Because every additional dollar of VC capital flowing into AI wrappers is a dollar that doesn't reach the actual infrastructure or the actual users. Free open-source clones don't kill VC-backed wrappers — they price-anchor them. They force the wrapper layer to compete on actual value-add instead of distribution monopoly. That's good for everyone except the wrapper's investors.