Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

condensr

YouTube, shorter.

Paste a YouTube link. Condensr writes chapters and notes in the browser. No account. Models run on the visitor’s machine.

Views

home

Home — paste a YouTube link

models

Model picker

library

Library

overview

Overview

chapters

Chapters

transcript

Transcript

How it works

  1. Official captions if the uploader wrote them.
  2. Cleaned auto-captions if that is all YouTube has.
  3. Whisper in the browser only when there are no captions at all.

Chapters and the overview are written locally. You can pick timed cuts or MiniLM, extractive lines or DistilBART, and Whisper tiny or base. The first download is cached in the browser.

The library lives in cookies and IndexedDB. After a video is condensed, it can be reopened offline.

Stack

Layer What
App Vite + React
API Express — YouTube metadata, captions (yt-dlp), audio (ffmpeg)
Models Transformers.js in a Web Worker (MiniLM, DistilBART, Whisper)

Local

npm run install:all
npm run dev

The Vite dev server proxies /api to the Express process.

Deploy

The web app can be hosted on Vercel. The API cannot — it needs a long-running Node process for yt-dlp and ffmpeg.

Frontend (Vercel)

  1. Import this repo.
  2. vercel.json builds client/ and outputs client/dist.
  3. Set VITE_API_URL to the public API origin, with no trailing slash.

API (Railway, Render, Fly, or any Node host)

npm run install:all
npm run build
npm start

npm start serves the built app and /api from server/ on port 8787 (or PORT). CORS is already enabled.

A $0 Render free instance will sleep after 15 minutes idle. Railway Hobby stays up and is a better fit for this API.

Models

First download, then cached in the browser. Not billed on Vercel.

Choice When it loads Size
Timed cuts Always available 0 MB
MiniLM Semantic chapters ~23 MB
Extractive writer Always available 0 MB
DistilBART Hybrid writer ~306 MB
Whisper tiny No captions ~48 MB EN / ~52 MB multilingual
Whisper base No captions ~115 MB EN / ~145 MB multilingual

WebGPU may fetch a larger fp16 copy (~2×). Traffic is between the visitor and Hugging Face.

License

MIT. Bundled or downloaded models keep their own licenses (typically Apache-2.0 for the Xenova Whisper, MiniLM, and DistilBART weights).

About

YouTube, shorter. Local-first chapters and notes in your browser.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages