finds.dev← search

// the find

75lb/handbrake-js

★ 587 · JavaScript · NOASSERTION · updated May 2026

Video encoding / transcoding / converting for node.js

A Node.js wrapper around HandBrakeCLI that gives you event-emitting encode jobs, a callback-style exec, and a promise-based run. It bundles the HandBrakeCLI binary on Mac and Windows so you don't have to install it separately. Useful if you need to drive video transcoding from a Node app or build a batch queue around it.

Bundles the HandBrakeCLI binary on Mac/Windows — no separate system install needed, which makes deployment to those targets genuinely simpler. Three API styles (spawn with events, exec with callback, run with promise) cover the main use patterns without forcing you into one. The progress event surface is thorough: FPS, avgFps, ETA, task number, percent — enough to build a real progress UI. Still actively maintained (last push May 2026, pinned to HandBrake 1.11.1) despite the narrow scope.

On Linux you must install HandBrakeCLI manually and potentially set the binary path yourself — the cross-platform story breaks exactly where most server workloads run. No queue or concurrency management; if you want to encode 50 files without hammering the machine, you build that yourself. Output container options haven't moved since HandBrake added AV1/HEVC presets became mainstream — you're still limited to MP4 and MKV with the codec list from ~2015. No TypeScript types shipped, which is a friction point if you're in a typed Node.js codebase.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →