|
- Quyền riêng tư: Video của bạn được lưu trữ trên thiết bị của bạn
- Tính năng miễn phí: Mọi tính năng cơ bản của CapCut hiện đều phải trả phí
- Đơn giản: Mọi người muốn các trình chỉnh sửa dễ sử dụng - CapCut đã chứng minh điều đó
- Chỉnh sửa dựa trên timeline
- Hỗ trợ đa track
- Preview theo thời gian thực
- Không watermark hoặc subscription
- Analytics được cung cấp bởi Databuddy, 100% Ẩn danh & Không xâm phạm.
- Blog được hỗ trợ bởi Marble, Headless CMS.
apps/web/– Ứng dụng web Next.js chínhsrc/components/– Các component UI và editorsrc/hooks/– Custom React hookssrc/lib/– Logic tiện ích và APIsrc/stores/– Quản lý state (Zustand, v.v.)src/types/– TypeScript types
Trước khi bắt đầu, hãy đảm bảo bạn đã cài đặt những thứ sau trên hệ thống của mình:
- Node.js (v18 hoặc mới hơn)
- Bun
(thay th�� cho
npm) - Docker và Docker Compose
Lưu ý: Docker là tùy chọn, nhưng nó rất cần thiết để chạy database và Redis services cục bộ. Nếu bạn chỉ định chạy frontend hoặc muốn đóng góp cho các tính năng frontend, bạn có thể bỏ qua việc cài đặt Docker. Nếu bạn đã làm theo các bước bên dưới trong Cài đặt, bạn đã sẵn sàng!
-
Fork repository
-
Clone fork của bạn về máy cục bộ
-
Di chuyển đến thư mục web app:
cd apps/web -
Sao chép
.env.examplesang.env.local:# Unix/Linux/Mac cp .env.example .env.local # Windows Command Prompt copy .env.example .env.local # Windows PowerShell Copy-Item .env.example .env.local
-
Cài đặt dependencies:
bun install -
Khởi động development server:
bun dev
-
Khởi động database và Redis services:
# Từ thư mục gốc dự án docker-compose up -d -
Di chuyển đến thư mục web app:
cd apps/web -
Sao chép
.env.examplesang.env.local:# Unix/Linux/Mac cp .env.example .env.local # Windows Command Prompt copy .env.example .env.local # Windows PowerShell Copy-Item .env.example .env.local
-
Cấu hình các biến môi trường cần thiết trong
.env.local:Các biến bắt buộc:
# Database (khớp với docker-compose.yaml) DATABASE_URL="postgresql://opencut:opencutthegoat@localhost:5432/opencut" # Tạo một secret an toàn cho Better Auth BETTER_AUTH_SECRET="your-generated-secret-here" BETTER_AUTH_URL="http://localhost:3000" # Redis (khớp với docker-compose.yaml) UPSTASH_REDIS_REST_URL="http://localhost:8079" UPSTASH_REDIS_REST_TOKEN="example_token" # Marble Blog MARBLE_WORKSPACE_KEY=cm6ytuq9x0000i803v0isidst # example organization key NEXT_PUBLIC_MARBLE_API_URL=https://api.marblecms.com # Development NODE_ENV="development"
Tạo BETTER_AUTH_SECRET:
# Unix/Linux/Mac openssl rand -base64 32 # Windows PowerShell (phương pháp đơn giản) [System.Web.Security.Membership]::GeneratePassword(32, 0) # Đa nền tảng (sử dụng Node.js) node -e "console.log(require('crypto').randomBytes(32).toString('base64'))" # Hoặc sử dụng trình tạo online: https://generate-secret.vercel.app/32
-
Chạy database migrations:
bun run db:migratetừ (bên trong apps/web) -
Khởi động development server:
bun run devtừ (bên trong apps/web)
Ứng dụng sẽ có sẵn tại http://localhost:3000.
Chúng tôi hoan nghênh các đóng góp! Trong khi chúng tôi đang tích cực phát triển và tái cấu trúc một số khu vực nhất định, có rất nhiều cơ hội để đóng góp hiệu quả.
🎯 Các lĩnh vực trọng tâm: Chức năng timeline, quản lý dự án, hiệu suất, sửa lỗi và cải thiện UI bên ngoài preview panel.
Xem Hướng dẫn đóng góp của chúng tôi để biết hướng dẫn thiết lập chi tiết, nguyên tắc development và hướng dẫn lĩnh vực trọng tâm đầy đủ.
Bắt đầu nhanh cho contributors:
- Fork repo và clone về máy cục bộ
- Làm theo hướng dẫn thiết lập trong CONTRIBUTING.md
- Tạo feature branch và submit một PR
