Case #007
Escriba — Offline Speech-to-text
Escriba: hours-long court hearings turned into text with timestamps, 100% offline — sensitive data never leaves the machine. Local AI packaged into a…
Technologies
- PYTHON
- FASTAPI
- WHISPER
- DOCKER
ESCRIBA
Hearings to text · Python · offline
Escriba, a personal project: a desktop app that transcribes very long court-hearing videos to text, with timestamps on each segment so you can follow the hearing without getting lost. Built for places that handle highly sensitive data: it works 100% without an internet connection and aims for maximum compatibility.
OFFLINE BY DESIGN
zero internet · zero third parties
Privacy here isn't a feature, it's the architecture: the transcription model (faster-whisper) runs on the local machine, there are no CDNs — even the SVG icons are embedded inline in the frontend — and nothing that gets processed leaves the computer. In judicial contexts, confidentiality is a requirement, not a perk.
transcribe in the cloud → leaks sensitive data
Discarded path
Discarded path: using a cloud transcription API. Sending court-hearing audio to a third party was unacceptable from the start — and it also chained the tool to connectivity. The constraint shaped the design: everything local.
the brand
Escriba — 'the scribe': named after the craft of faithfully recording what was said. That's what the tool does: it listens to hours of hearings and leaves the written record, with nothing ever leaving the machine.
LITE & FULL to match the machine
Real compatibility: two builds. LITE with the base model (~2GB RAM, faster) and FULL with the small model (~4GB, better quality). The user picks based on their hardware — the tool adapts to the courthouse machine, not the other way around.
FFMPEG + WHISPER
video → audio → text + timestamps
The pipeline: FFmpeg extracts audio from almost any video format (MP4, MKV, AVI, MOV and more), faster-whisper transcribes it with per-segment timestamps, and the result comes out as a Word document ready for the case file. SQLite history with full-text search across all transcriptions.
DOUBLE-CLICK AND THE HEARING WRITES ITSELF
portable · no install · no internet
The result: a portable executable packaged with PyInstaller. Double-click and done — no install, no dependencies, no internet. Hours of hearings that used to be transcribed by hand, now in timestamped text while you have a coffee.
STACK
Python with FastAPI on the backend, faster-whisper as the local transcription engine, SQLite for history and an embedded vanilla HTML/CSS/JS frontend — no heavy frameworks, no external dependencies. Optional Docker for development. Deliberately boring choices: what runs anywhere wins here.
Let's talk? I'm open to projects and opportunities.