2025-06-22 22:22:08 +02:00
|
|
|
|
# OpenCut (prev AppCut)
|
2025-06-22 10:02:50 +02:00
|
|
|
|
|
2025-06-22 22:07:06 +02:00
|
|
|
|
A free, open-source video editor for web, desktop, and mobile.
|
2025-06-22 10:03:34 +02:00
|
|
|
|
|
2025-06-22 22:07:06 +02:00
|
|
|
|
## Why?
|
2025-06-22 10:02:50 +02:00
|
|
|
|
|
2025-06-22 22:07:06 +02:00
|
|
|
|
- **Privacy**: Your videos stay on your device
|
|
|
|
|
|
- **Free features**: Every basic feature of CapCut is paywalled now
|
|
|
|
|
|
- **Simple**: People want editors that are easy to use - CapCut proved that
|
|
|
|
|
|
|
|
|
|
|
|
## Features
|
|
|
|
|
|
|
|
|
|
|
|
- Timeline-based editing
|
|
|
|
|
|
- Multi-track support
|
|
|
|
|
|
- Real-time preview
|
|
|
|
|
|
- No watermarks or subscriptions
|
|
|
|
|
|
|
2025-06-23 15:33:06 +07:00
|
|
|
|
## Project Structure
|
2025-06-22 22:07:06 +02:00
|
|
|
|
|
2025-06-23 15:33:06 +07:00
|
|
|
|
- `apps/web/` – Main Next.js web application
|
|
|
|
|
|
- `src/components/` – UI and editor components
|
|
|
|
|
|
- `src/hooks/` – Custom React hooks
|
|
|
|
|
|
- `src/lib/` – Utility and API logic
|
|
|
|
|
|
- `src/stores/` – State management (Zustand, etc.)
|
|
|
|
|
|
- `src/types/` – TypeScript types
|
|
|
|
|
|
|
|
|
|
|
|
## Getting Started
|
|
|
|
|
|
|
|
|
|
|
|
1. **Clone the repository:**
|
2025-06-24 05:06:21 +08:00
|
|
|
|
|
2025-06-23 15:33:06 +07:00
|
|
|
|
```bash
|
|
|
|
|
|
git clone <repo-url>
|
|
|
|
|
|
cd OpenCut
|
|
|
|
|
|
```
|
|
|
|
|
|
2. **Install dependencies:**
|
2025-06-24 05:06:21 +08:00
|
|
|
|
|
2025-06-23 15:33:06 +07:00
|
|
|
|
```bash
|
|
|
|
|
|
cd apps/web
|
|
|
|
|
|
npm install
|
|
|
|
|
|
# or, with Bun
|
|
|
|
|
|
bun install
|
|
|
|
|
|
```
|
|
|
|
|
|
3. **Run the development server:**
|
2025-06-24 05:06:21 +08:00
|
|
|
|
|
2025-06-23 15:33:06 +07:00
|
|
|
|
```bash
|
|
|
|
|
|
npm run dev
|
|
|
|
|
|
# or, with Bun
|
|
|
|
|
|
bun run dev
|
|
|
|
|
|
```
|
2025-06-24 05:06:21 +08:00
|
|
|
|
4. **Open in browser:**
|
|
|
|
|
|
|
2025-06-23 15:33:06 +07:00
|
|
|
|
Visit [http://localhost:3000](http://localhost:3000)
|
2025-06-22 22:07:06 +02:00
|
|
|
|
|
2025-06-24 05:00:34 +08:00
|
|
|
|
## Run with Docker
|
2025-06-24 05:06:21 +08:00
|
|
|
|
1. **Prepare environment variables:**
|
|
|
|
|
|
|
2025-06-24 05:00:34 +08:00
|
|
|
|
Edit [docker-compose.yaml](https://github.com/OpenCut-app/OpenCut/blob/main/docker-compose.yaml#L57-L64)
|
|
|
|
|
|
2. **Build and run:**
|
2025-06-24 05:06:21 +08:00
|
|
|
|
|
2025-06-24 05:00:34 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
docker-compose up -d --build
|
|
|
|
|
|
```
|
|
|
|
|
|
3. *(Optional)* **Migrate database:**
|
2025-06-24 05:06:21 +08:00
|
|
|
|
|
2025-06-24 05:00:34 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
docker-compose exec web bun run db:migrate
|
|
|
|
|
|
```
|
|
|
|
|
|
4. **Open in browser:**
|
2025-06-24 05:06:21 +08:00
|
|
|
|
|
2025-06-24 05:00:34 +08:00
|
|
|
|
Visit [http://localhost:3000](http://localhost:3000)
|
|
|
|
|
|
|
2025-06-22 22:07:06 +02:00
|
|
|
|
## Contributing
|
2025-06-22 15:23:11 +02:00
|
|
|
|
|
2025-06-24 05:06:21 +08:00
|
|
|
|
Visit [CONTRIBUTING.md](.github/CONTRIBUTING.md)
|
2025-06-22 15:23:11 +02:00
|
|
|
|
## License
|
|
|
|
|
|
|
2025-06-24 05:06:21 +08:00
|
|
|
|
[MIT LICENSE](LICENSE)
|