4.9 KiB
📼 Cinch
A Video Tool Built For People, Not Profit
Hey there! 🙂
Cinch is a small video compression and trimming app made for anyone who needs to get their clips under file size limits. No paywalls, no tracking, no weird subscription nonsense. Just a simple tool that does what it says on the tin.
I built this because I was tired of watching friends struggle with bloated, ad-ridden "free" tools that exist mostly to extract value from users. The commons deserve good software too, you know? So here's something made with care, shared openly, and designed to actually help people.
(Disclaimer: this is still early days, so if something breaks, well... that's what issue trackers are for, haha)
🎯 What It Does
Drag, Drop, Done
Drop a video onto the app and Cinch gets to work right away. No confusing menus, no hunting through settings. It reads your file, shows you what matters, and gives you clear options.
Smart Compression
Cinch figures out the best settings to hit your target size without making your video look like a potato. It tries a few approaches internally and picks the one that keeps quality high while getting the file small enough.
Trim With Precision
Need just a segment? Grab the handles on the timeline and set your in/out points. The filmstrip shows thumbnails so you know exactly where you are. You can also snap to keyframes for clean cuts.
Size Presets
One-click presets for common limits:
- 8 MB
- 16 MB
- 25 MB
- 50 MB
- 100 MB
- Custom target (set your own)
Hardware Speed
If you've got NVENC, AMF, or Quick Sync, Cinch will use them. Fall back to software encoding when needed. No need to think about it.
See Before You Commit
Live preview with play/pause, volume, and timeline scrubbing. Check your work before you hit the button.
Dark Mode
Because staring at bright white screens at 2 AM is cruel and unusual. Toggle between light, dark, and system sync.
🛠️ How To Use
- Grab the latest release from the releases page (or build it yourself if you're into that)
- Open the app and drag a video onto the drop zone
- Pick your preset or set a custom target size
- Adjust the trim if you only want part of the video
- Hit compress and wait a moment
- Grab your file from the output folder
That's it. No accounts, no cloud uploads, no data leaving your machine.
🏗️ Building From Source
You'll need:
Then:
# Clone the repo
git clone https://git.lashman.live/lashman/cinch.git
cd cinch
# Install frontend deps
npm install
# Run in dev mode
npm run tauri dev
# Build for production
npm run tauri build
The built app will be in src-tauri/target/release/.
🧰 How It's Built
Frontend
- Svelte 5 - reactive UI without the bloat
- Tailwind CSS - utility-first styling
- Tabler Icons - clean icon set
Backend
- Tauri v2 - Rust-powered desktop framework
- FFmpeg - the engine that does the actual work
- Tokio - async Rust runtime
Design
- Custom title bar (no native OS chrome)
- Geist Mono + Nunito Sans + Syne typefaces
- Generous whitespace, big touch targets
- Expressive micro-interactions
🤝 Contributing
This project is open to anyone who wants to help improve it. No corporate CLAs, no permission needed. If you see something broken or have an idea, open an issue or send a patch.
I especially welcome:
- Bug reports (with steps to reproduce, please)
- UI/UX improvements
- Better compression strategies
- Documentation fixes
- Translations
Please keep things friendly and constructive. We're all just trying to make something useful here.
📜 License
No rights reserved. Use it, study it, change it, share it. The code belongs to everyone who uses it. No attribution required, no restrictions applied.
🙏 Shout Outs
- The FFmpeg team for making the impossible possible
- The Tauri crew for a desktop framework that doesn't eat 300 MB of RAM
- Everyone who reported bugs and suggested features
Built with care by someone who thinks software should serve its users, not the other way around. 🙂
Questions? Ideas? Just want to say hi? Open an issue or drop by the discussions.
Laters! 🫂