Rescript: Open-Source Descript Alternative That Runs Entirely in Your Browser

By Prahlad Menon 1 min read

Descript charges $24/month for transcript-based video editing. Rescript does the same thing for free, entirely in your browser, with your files never leaving your device.

The concept is simple: drop in a video, it transcribes locally, you edit the text, and the video cuts follow. Delete a word from the transcript and the corresponding clip is removed. Export when done.

What Makes This Different

Most “free Descript alternatives” are either cloud-based (your files go somewhere) or require local installation. Rescript is neither:

  • Runs in the browser — no install, no account, no server
  • Transcription happens on-device — Whisper runs via WebGPU/WASM in a Web Worker
  • Media never leaves your machine — the only external request is anonymous analytics (which fails silently offline)

After the AI models download once (~200MB for Whisper Base, ~600MB for Whisper Small), everything works fully offline.

The Stack

ComponentTech
AppNext.js + React + TypeScript + Tailwind
Transcriptiontransformers.js running Whisper (WebGPU with WASM fallback)
Speaker labelspyannote-segmentation-3.0 (ONNX)
Media processingffmpeg.wasm (multi-threaded)
Statezustand

Key Features

Word-level editing — Select words in the transcript, press delete, the cut follows. The timeline shows cut regions in red, and the preview player skips them in real time.

Filler removal — One-click removal of “um”, “uh”, and similar fillers. Useful for cleaning up interview footage or podcast recordings.

Speaker diarization — Transcript is grouped by speaker, so you can see who said what.

Import existing transcripts — If you already have an SRT, VTT, or JSON caption file, skip Whisper entirely and edit directly.

Frame-accurate export — The kept ranges are trimmed and concatenated with an ffmpeg filter graph and re-encoded (libx264/aac).

How It Works

  1. Extract — ffmpeg.wasm decodes audio to mono 16kHz PCM
  2. Transcribe — Whisper runs in a Web Worker with word-level timestamps; pyannote assigns speakers
  3. Edit — Deletions create “cut ranges” that the player skips in real time
  4. Export — Kept ranges are trimmed and concatenated, then re-encoded to MP4 (video) or M4A (audio)

Browser Requirements

Needs SharedArrayBuffer (requires COOP/COEP headers), so Chromium-based browsers work best. WebGPU is used when available for faster inference, with WASM fallback otherwise.

The Weekend Build

The creator built this in a single weekend after looking at Descript’s pricing. That’s the power of modern browser APIs and pre-trained models — what required a cloud service and subscription a few years ago can now run client-side for free.

Try it: wassgha.github.io/rescript

GitHub: github.com/wassgha/rescript

License: MIT


If you edit podcasts, interviews, or any spoken content and don’t need Descript’s full feature set (overdub, stock media, collaboration), this handles the core use case — text-based editing with zero cost and full privacy.