Compress videos to fit GitHub limits — runs entirely in your browser. No upload. Runs locally.
GitShrink is a local-first video compressor built to solve a very specific problem:
👉 Making videos small enough to upload to GitHub (under 10MB)
If you've ever tried to upload a video to GitHub, you've probably seen this:
❌ File too large
GitShrink solves this by:
- Automatically compressing videos below 10MB
- Running entirely in your browser (no uploads)
- Using WebAssembly (FFmpeg) for efficient processing
- ⚡ Runs locally — your files never leave your computer
- 🎯 GitHub mode — automatically targets
<10MB - 🧠 Smart compression — adapts based on input size
- 💸 Zero server cost — no backend, no infrastructure
- 🪶 Lightweight and simple UI
GitShrink uses:
- WebAssembly (WASM) to run FFmpeg in the browser
- Client-side processing (no server involved)
- Size-targeted compression strategy
Instead of focusing only on quality, GitShrink focuses on:
🎯 "Make this video small enough to upload"
This tool is designed for:
- GitHub README demos
- Small product videos
- Quick screen recordings
- Any video that needs to be under GitHub limits
- Large video editing workflows
- High-quality production exports
- Very large files (100MB+)
| Before | After | Reduction |
|---|---|---|
| 24.4 MB | 7.7 MB | 69% |
✅ Ready for GitHub upload
Everything runs locally.
- No uploads
- No tracking
- No analytics
- No backend
GitShrink is built with a simple idea:
Small, useful tools > complex platforms
- No accounts
- No ads
- No data collection
- No monetization
Just a tool that does one thing well.
- WebAssembly (WASM)
- FFmpeg (compiled to WASM)
- JS / Frontend
👉 [Try it here](#)
Feel free to open issues or PRs.
Ideas welcome:
- More formats
- Better compression strategies
- UI improvements
MIT
Built as an experiment in:
- Local-first apps
- Browser-based video processing
- Zero-cost infrastructure tools
If you find it useful, consider giving it a ⭐