OpenCut: the open source CapCut alternative
OpenCut is an MIT licensed open source CapCut alternative built with TypeScript and Rust on Bun, with 91,638 GitHub stars and a live site at opencut.app.
TL;DR: OpenCut describes itself in four words as the open-source CapCut alternative, and the repository backs that up with 91,638 stars, 9,058 forks, an MIT license, and a live site at opencut.app. The interesting engineering is in the stack: TypeScript for the application, Rust for the heavy lifting, Bun for the runtime, and a Rust workspace checked in beside the app.
What the project claims
The description is the shortest one in this batch. The open-source CapCut alternative, with topics limited to editor, oss, and videoeditor. There is no feature list, so the case rests on adoption and on the code itself.
The numbers back the claim more convincingly than the description does. CapCut is a closed product with a very large user base, and an open alternative reaching 91,638 stars with nearly 9,000 forks is a serious attempt rather than a weekend clone. The fork figure matters most here. People fork a project like this when they intend to build something with it, or run it, not merely read about it.
The stack is the interesting part
GitHub’s language endpoint measures bytes per language, which is more informative than the single-language label on the repository page:
{
"TypeScript": 223183,
"Rust": 38455,
"CSS": 4631
}
TypeScript carries roughly 84 percent of the measured bytes and Rust about 14.5. A Rust component inside a web-based video editor is not an accident. Timeline scrubbing, decoding, compositing, and export are the operations where a garbage collector pause is visible to the user, and Rust is the usual answer to that class of problem.
Treat that as a reading of the numbers rather than a documented design decision. The root of the tree is consistent with it, though.
The root of the repository
| Path | What it implies |
|---|---|
Cargo.toml, Cargo.lock, crates/ | a Rust workspace, not an incidental dependency |
apps/ | application code in a monorepo layout |
bunfig.toml | Bun as the JavaScript runtime and package manager |
moon.yml, .moon/ | moonrepo driving tasks across the monorepo |
.prototools | the Buf protobuf toolchain |
changelog/ | changelog entries tracked in the repository |
brand/ | brand assets kept alongside the code |
.env.example | environment configured from a template |
The combination of Bun, moonrepo, and protobuf describes a deliberately modern toolchain, and it is a reasonably opinionated one. If you are coming from a webpack and npm background, expect to adjust. If you are picking a stack fresh, the project has already made the decisions for you.
For a quick summary of any repository in this category before you clone it:
curl -sL https://api.github.com/repos/OpenCut-app/OpenCut \
| jq '{
stars: .stargazers_count,
forks: .forks_count,
issues: .open_issues_count,
license: .license.spdx_id,
pushed: .pushed_at[0:10]
}'
The rest of the metadata
| Field | Value |
|---|---|
| Full name | OpenCut-app/OpenCut |
| Homepage | https://opencut.app |
| License | MIT |
| Stars | 91,638 |
| Forks | 9,058 |
| Open issues | 374 |
| Size | about 28 MB |
| Created | 2025-06-22 |
| Last push | 2026-09-24 |
The homepage responds, returning HTTP/2 200 with HTML when checked, so the project is actively deployed rather than only published.
Three hundred and seventy-four open issues is the highest count in this batch, and it tracks with a project of this size and ambition. A repository this actively used will have a queue, and the number is better read as evidence of use than as a quality signal.
The last push on 2026-09-24, ten days before this writing, suggests the work is ongoing. A changelog directory at the root also means you can read what changed without reading a diff.
When it fits
Worth trying if you edit video regularly and want an editor you can run and modify yourself. MIT licensing means the code is yours to fork, and the Rust crates mean a performance problem is likely something you can fix rather than something you have to file.
It also serves as a reference implementation if you are building browser-based media tooling. Timeline architecture, export pipelines, and the Rust and TypeScript boundary are all visible in a repository with this many people depending on it.
When to skip it
Skip it if you need the full CapCut feature set today. An open alternative at this stage usually covers the core timeline and export path well and trails on effects, templates, and mobile. Judge the gap against the project changelog before you migrate a workflow you depend on.
Be honest about the cost of self-hosting an editor, too. Running a Rust toolchain, a Bun workspace, and a monorepo task runner locally is more moving parts than a downloaded desktop app, and that tradeoff is the price of owning the source.
Source and Accuracy Notes
- Project page: https://github.com/OpenCut-app/OpenCut
- Source repository: OpenCut-app/OpenCut (verified via GitHub API
html_url) - License: MIT (verified via GitHub API
license.spdx_id) - Stars at time of writing: 91,638
- Additional verification:
languagesandcontentsAPI endpoints, and an HTTP status probe of the homepage
Related Posts
dev-tools
Automotive Skills Suite for AI Engineering
Evaluate Automotive Skills Suite for APQP, ASPICE, HARA, safety-plan, and DIA workflows with setup notes, governance risks, and SME review guidance.
5/28/2026
dev-tools
awesome-agentic-ai-zh Roadmap Guide
Explore awesome-agentic-ai-zh as a Chinese agentic AI learning roadmap, with setup notes, track selection, study workflow, and evaluation guidance.
5/28/2026
dev-tools
Baguette iOS Simulator Automation Guide
Set up Baguette for iOS Simulator automation, web dashboards, device farms, gesture input, streaming, and camera testing with Xcode caveats.
5/28/2026