Files
OpenCut/README.md
T

130 lines
3.1 KiB
Markdown
Raw Normal View History

2025-06-26 22:40:25 +05:30
<table width="100%">
<tr>
<td align="left" width="120">
<img src="apps/web/public/logo.png" alt="OpenCut Logo" width="100" />
</td>
<td align="right">
<h1>OpenCut <span style="font-size: 0.7em; font-weight: normal;">(prev AppCut)</span></h1>
<h3 style="margin-top: -10px;">A free, open-source video editor for web, desktop, and mobile.</h3>
</td>
</tr>
</table>
2025-06-22 10:02:50 +02:00
2025-06-24 15:54:31 +08:00
2025-06-24 11:10:58 +03:00
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-24 22:40:19 +03:00
- Analytics provided by [Databuddy](https://www.databuddy.cc?utm_source=opencut), 100% Anonymized & Non-invasive.
2025-06-22 22:07:06 +02:00
## Project Structure
2025-06-22 22:07:06 +02: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
### Prerequisites
Before you begin, ensure you have the following installed on your system:
- [Bun](https://bun.sh/docs/installation)
- [Docker](https://docs.docker.com/get-docker/) and [Docker Compose](https://docs.docker.com/compose/install/)
- [Node.js](https://nodejs.org/en/) (for `npm` alternative)
### Setup
1. **Clone the repository**
```bash
git clone <repo-url>
cd OpenCut
```
2. **Start backend services**
From the project root, start the PostgreSQL and Redis services:
```bash
docker-compose up -d
```
3. **Set up environment variables**
Navigate into the web app's directory and create a `.env` file from the example:
```bash
cd apps/web
# Unix/Linux/Mac
cp .env.example .env.local
# Windows Command Prompt
copy .env.example .env.local
# Windows PowerShell
Copy-Item .env.example .env.local
```
*The default values in the `.env` file should work for local development.*
4. **Install dependencies**
Install the project dependencies using `bun` (recommended) or `npm`.
```bash
# With bun
bun install
# Or with npm
npm install
```
5. **Run database migrations**
Apply the database schema to your local database:
```bash
# With bun
bun run db:push:local
# Or with npm
npm run db:push:local
```
6. **Start the development server**
```bash
# With bun
bun run dev
# Or with npm
npm run dev
```
The application will be available at [http://localhost:3000](http://localhost:3000).
2025-06-22 22:07:06 +02:00
2025-06-25 23:47:14 +02:00
---
2025-06-24 05:06:21 +08:00
2025-06-24 05:00:34 +08:00
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-25 23:47:14 +02:00
---
We welcome contributions! Please see our [Contributing Guide](.github/CONTRIBUTING.md) for detailed setup instructions and development guidelines.
Quick start for contributors:
- Fork the repo and clone locally
- Follow the setup instructions in CONTRIBUTING.md
- Create a feature branch and submit a PR
2025-06-22 15:23:11 +02:00
## License
2025-06-24 05:06:21 +08:00
[MIT LICENSE](LICENSE)