From 36919aa324bdc672c1dbefdf182dd85c2541a419 Mon Sep 17 00:00:00 2001 From: Kris K <78066887+zhouxiaoka@users.noreply.github.com> Date: Tue, 16 Sep 2025 02:53:17 +0800 Subject: [PATCH] Add files via upload --- .github/README-EN.md | 891 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 891 insertions(+) create mode 100644 .github/README-EN.md diff --git a/.github/README-EN.md b/.github/README-EN.md new file mode 100644 index 00000000..7068cb3c --- /dev/null +++ b/.github/README-EN.md @@ -0,0 +1,891 @@ +# AutoClip - AI Video Intelligent Clipping System + +![AutoClip Logo](https://img.shields.io/badge/AutoClip-AI%20Video%20Processing-blue?style=for-the-badge&logo=video) + +## AI-powered intelligent video clipping system + +Supporting YouTube/Bilibili video download, automatic clipping, and smart collection +generation + +[![Python](https://img.shields.io/badge/Python-3.8+-green?style=flat&logo=python)](https://python.org) +[![React](https://img.shields.io/badge/React-18+-blue?style=flat&logo=react)](https://reactjs.org) +[![FastAPI](https://img.shields.io/badge/FastAPI-Latest-red?style=flat&logo=fastapi)](https://fastapi.tiangolo.com) +[![TypeScript](https://img.shields.io/badge/TypeScript-5.0+-blue?style=flat&logo=typescript)](https://www.typescriptlang.org) +[![Celery](https://img.shields.io/badge/Celery-Latest-green?style=flat&logo=celery)](https://celeryproject.org) +[![License](https://img.shields.io/badge/License-MIT-yellow?style=flat)](LICENSE) + +[![GitHub stars](https://img.shields.io/badge/Stars-0-blue?style=social)](https://github.com/zhouxiaoka/autoclip) +[![GitHub forks](https://img.shields.io/badge/Forks-0-blue?style=social)](https://github.com/zhouxiaoka/autoclip) +[![GitHub issues](https://img.shields.io/badge/Issues-0-blue)](https://github.com/zhouxiaoka/autoclip/issues) + +**Language**: [English](README-EN.md) | [δΈ­ζ–‡](README.md) + + + +## 🎯 Project Overview + +AutoClip is an AI-powered intelligent video clipping system that can automatically +download videos from YouTube, Bilibili, and other platforms, extract exciting clips +through AI analysis, and intelligently generate collections. The system adopts a +modern frontend-backend separation architecture, providing an intuitive web +interface and powerful backend processing capabilities. + +### ✨ Core Features + +- 🎬 **Multi-platform Support**: One-click download from YouTube, Bilibili, and local + file upload +- πŸ€– **AI Intelligent Analysis**: Video content understanding based on Qwen large + language model +- βœ‚οΈ **Automatic Clipping**: Intelligent recognition of exciting clips with automatic + cutting, supporting multiple video categories +- πŸ“š **Smart Collections**: AI-recommended and manually created video collections + with drag-and-drop sorting +- πŸš€ **Real-time Processing**: Asynchronous task queue with real-time progress feedback + and WebSocket communication +- 🎨 **Modern Interface**: React + TypeScript + Ant Design with responsive design +- πŸ“± **Mobile Support** **[In Development]**: Responsive design, improving mobile + experience +- πŸ” **Account Management** **[In Development]**: Support for multiple Bilibili account + management with automatic health checks +- πŸ“Š **Data Statistics**: Complete project management and data statistics functionality +- πŸ› οΈ **Easy Deployment**: One-click startup scripts, Docker support, and detailed + documentation +- πŸ“€ **Bilibili Upload** **[In Development]**: Automatic upload of clipped videos + to Bilibili +- ✏️ **Subtitle Editing** **[In Development]**: Visual subtitle editing and + synchronization functionality + +## πŸ—οΈ System Architecture + +```mermaid +graph TB + A[User Interface] --> B[FastAPI Backend] + B --> C[Celery Task Queue] + B --> D[Redis Cache] + B --> E[SQLite Database] + C --> F[AI Processing Engine] + F --> G[Video Processing] + F --> H[Subtitle Analysis] + F --> I[Content Understanding] + B --> J[File Storage] + K[YouTube API] --> B + L[Bilibili API] --> B +``` + +### Technology Stack + +#### Backend Technologies + +- **FastAPI**: Modern Python web framework with automatic API documentation generation +- **Celery**: Distributed task queue supporting asynchronous processing +- **Redis**: Message broker and cache for task status management +- **SQLite**: Lightweight database with PostgreSQL upgrade support +- **yt-dlp**: YouTube video download supporting multiple formats +- **Qwen**: AI content analysis supporting multiple models +- **WebSocket**: Real-time communication and progress push +- **Pydantic**: Data validation and serialization + +#### Frontend Technologies + +- **React 18**: User interface framework with Hooks and functional components +- **TypeScript**: Type safety for better development experience +- **Ant Design**: Enterprise-grade UI component library +- **Vite**: Fast build tool with hot reload +- **Zustand**: Lightweight state management +- **React Router**: Route management +- **Axios**: HTTP client +- **React Player**: Video player + +## πŸš€ Quick Start + +### Environment Requirements + +#### Docker Deployment (Recommended) + +- **Docker**: 20.10+ +- **Docker Compose**: 2.0+ +- **Memory**: Minimum 4GB, recommended 8GB+ +- **Storage**: Minimum 10GB available space + +#### Local Deployment + +- **Operating System**: macOS / Linux / Windows (WSL) +- **Python**: 3.8+ (recommended 3.9+) +- **Node.js**: 16+ (recommended 18+) +- **Redis**: 6.0+ (recommended 7.0+) +- **FFmpeg**: Video processing dependency +- **Memory**: Minimum 4GB, recommended 8GB+ +- **Storage**: Minimum 10GB available space + +### One-Click Startup + +#### Method 1: Docker Deployment (Recommended) + +```bash +# Clone the project +git clone https://github.com/zhouxiaoka/autoclip.git +cd autoclip + +# Docker one-click startup +./docker-start.sh + +# Development environment startup +./docker-start.sh dev + +# Stop services +./docker-stop.sh + +# Check service status +./docker-status.sh +``` + +#### Method 2: Local Deployment + +```bash +# Clone the project +git clone https://github.com/zhouxiaoka/autoclip.git +cd autoclip + +# One-click startup (recommended, includes complete checks and monitoring) +./start_autoclip.sh + +# Quick startup (development environment, skips detailed checks) +./quick_start.sh + +# Check system status +./status_autoclip.sh + +# Stop system +./stop_autoclip.sh +``` + +### Manual Installation + +```bash +# 1. Create virtual environment +python3 -m venv venv +source venv/bin/activate # Linux/macOS +# or venv\Scripts\activate # Windows + +# 2. Install Python dependencies +pip install -r requirements.txt + +# 3. Install frontend dependencies +cd frontend && npm install && cd .. + +# 4. Install Redis +# macOS +brew install redis +brew services start redis + +# Ubuntu/Debian +sudo apt update +sudo apt install redis-server +sudo systemctl start redis-server + +# CentOS/RHEL +sudo yum install redis +sudo systemctl start redis + +# 5. Install FFmpeg +# macOS +brew install ffmpeg + +# Ubuntu/Debian +sudo apt install ffmpeg + +# CentOS/RHEL +sudo yum install ffmpeg + +# 6. Configure environment variables +cp env.example .env +# Edit .env file and fill in necessary configurations +``` + +## 🎬 Feature Demo + +### Main Feature Showcase + +1. **Video Download and Processing** + - Support for YouTube, Bilibili video link parsing + - Automatic video and subtitle file download + - Support for local file upload + +2. **AI Intelligent Analysis** + - Automatic video outline extraction + - Intelligent topic timeline identification + - Exciting clip scoring + +3. **Video Clipping and Collections** + - Automatic exciting clip generation + - Smart collection recommendations + - Support for manual editing and sorting + +4. **Real-time Progress Monitoring** + - WebSocket real-time progress push + - Detailed task status display + - Error handling and retry mechanisms + +5. **Bilibili Upload Feature** **[In Development]** + - Automatic upload of clipped videos to Bilibili + - Support for multiple account management + - Batch upload and queue management + +6. **Subtitle Editing Feature** **[In Development]** + - Visual subtitle editor + - Subtitle synchronization and adjustment + - Multi-language subtitle support + +## πŸ“– User Guide + +### 1. Video Download + +#### YouTube Videos + +1. Click "New Project" on the homepage +2. Select "YouTube Link" +3. Paste the video URL +4. Choose browser cookies (optional) +5. Click "Start Download" + +#### Bilibili Videos + +1. Click "New Project" on the homepage +2. Select "Bilibili Link" +3. Paste the video URL +4. Choose login account +5. Click "Start Download" + +#### Local Files + +1. Click "New Project" on the homepage +2. Select "File Upload" +3. Drag and drop or select video files +4. Upload subtitle files (optional) +5. Click "Start Processing" + +### 2. Intelligent Processing + +The system will automatically execute the following steps: + +1. **Material Preparation**: Download video and subtitle files +2. **Content Analysis**: AI extracts video outline and key information +3. **Timeline Extraction**: Identify topic time intervals +4. **Exciting Scoring**: AI scoring for each clip +5. **Title Generation**: Generate attractive titles for exciting clips +6. **Collection Recommendation**: AI-recommended video collections +7. **Video Generation**: Generate clipped videos and collection videos + +### 3. Result Management + +- **View Clips**: View all generated video clips on the project detail page +- **Edit Information**: Modify clip titles, descriptions, etc. +- **Create Collections**: Manually create or use AI-recommended collections +- **Download Export**: Download individual clips or complete collections +- **Bilibili Upload** **[In Development]**: One-click upload of clipped videos to + Bilibili +- **Subtitle Editing** **[In Development]**: Visual editing and synchronization of + subtitle files + +## πŸ”§ Configuration + +### Environment Variable Configuration + +Create `.env` file: + +```bash +# Database configuration +DATABASE_URL=sqlite:///./data/autoclip.db + +# Redis configuration +REDIS_URL=redis://localhost:6379/0 + +# AI API configuration +API_DASHSCOPE_API_KEY=your_dashscope_api_key +API_MODEL_NAME=qwen-plus + +# Logging configuration +LOG_LEVEL=INFO +ENVIRONMENT=development +DEBUG=true + +# File storage +UPLOAD_DIR=./data/uploads +PROJECT_DIR=./data/projects +``` + +### Bilibili Account Configuration **[In Development]** + +1. Click "Bilibili Account Management" on the settings page +2. Choose login method: + - **Cookie Import** (recommended): Export cookies from browser + - **Account Password**: Directly input account and password + - **QR Code Login**: Scan QR code to login +3. After successful addition, the system will automatically manage account health + status + +## πŸ“ Project Structure + +```text +autoclip/ +β”œβ”€β”€ backend/ # Backend code +β”‚ β”œβ”€β”€ api/ # API routes +β”‚ β”‚ β”œβ”€β”€ v1/ # API v1 version +β”‚ β”‚ β”‚ β”œβ”€β”€ youtube.py # YouTube download API +β”‚ β”‚ β”‚ β”œβ”€β”€ bilibili.py # Bilibili download API +β”‚ β”‚ β”‚ β”œβ”€β”€ projects.py # Project management API +β”‚ β”‚ β”‚ β”œβ”€β”€ clips.py # Video clip API +β”‚ β”‚ β”‚ β”œβ”€β”€ collections.py # Collection management API +β”‚ β”‚ β”‚ └── settings.py # System settings API +β”‚ β”‚ └── upload_queue.py # Upload queue management +β”‚ β”œβ”€β”€ core/ # Core configuration +β”‚ β”‚ β”œβ”€β”€ database.py # Database configuration +β”‚ β”‚ β”œβ”€β”€ celery_app.py # Celery configuration +β”‚ β”‚ β”œβ”€β”€ config.py # System configuration +β”‚ β”‚ └── llm_manager.py # AI model management +β”‚ β”œβ”€β”€ models/ # Data models +β”‚ β”‚ β”œβ”€β”€ project.py # Project model +β”‚ β”‚ β”œβ”€β”€ clip.py # Clip model +β”‚ β”‚ β”œβ”€β”€ collection.py # Collection model +β”‚ β”‚ └── bilibili.py # Bilibili account model +β”‚ β”œβ”€β”€ services/ # Business logic +β”‚ β”‚ β”œβ”€β”€ video_service.py # Video processing service +β”‚ β”‚ β”œβ”€β”€ ai_service.py # AI analysis service +β”‚ β”‚ └── upload_service.py # Upload service +β”‚ β”œβ”€β”€ tasks/ # Celery tasks +β”‚ β”‚ β”œβ”€β”€ processing.py # Processing tasks +β”‚ β”‚ β”œβ”€β”€ upload.py # Upload tasks +β”‚ β”‚ └── maintenance.py # Maintenance tasks +β”‚ β”œβ”€β”€ pipeline/ # Processing pipeline +β”‚ β”‚ β”œβ”€β”€ step1_outline.py # Outline extraction +β”‚ β”‚ β”œβ”€β”€ step2_timeline.py # Timeline analysis +β”‚ β”‚ β”œβ”€β”€ step3_scoring.py # Exciting scoring +β”‚ β”‚ └── step6_video.py # Video generation +β”‚ └── utils/ # Utility functions +β”œβ”€β”€ frontend/ # Frontend code +β”‚ β”œβ”€β”€ src/ +β”‚ β”‚ β”œβ”€β”€ components/ # React components +β”‚ β”‚ β”‚ β”œβ”€β”€ UploadModal.tsx # Upload modal +β”‚ β”‚ β”‚ β”œβ”€β”€ ClipCard.tsx # Clip card +β”‚ β”‚ β”‚ β”œβ”€β”€ CollectionCard.tsx # Collection card +β”‚ β”‚ β”‚ └── BilibiliManager.tsx # Bilibili management +β”‚ β”‚ β”œβ”€β”€ pages/ # Page components +β”‚ β”‚ β”‚ β”œβ”€β”€ HomePage.tsx # Home page +β”‚ β”‚ β”‚ β”œβ”€β”€ ProjectDetailPage.tsx # Project detail +β”‚ β”‚ β”‚ └── SettingsPage.tsx # Settings page +β”‚ β”‚ β”œβ”€β”€ services/ # API services +β”‚ β”‚ β”‚ └── api.ts # API client +β”‚ β”‚ └── stores/ # State management +β”‚ └── package.json +β”œβ”€β”€ data/ # Data storage +β”‚ β”œβ”€β”€ projects/ # Project data +β”‚ β”œβ”€β”€ uploads/ # Upload files +β”‚ β”œβ”€β”€ temp/ # Temporary files +β”‚ β”œβ”€β”€ output/ # Output files +β”‚ └── autoclip.db # Database file +β”œβ”€β”€ scripts/ # Utility scripts +β”‚ β”œβ”€β”€ start_autoclip.sh # Startup script +β”‚ β”œβ”€β”€ stop_autoclip.sh # Stop script +β”‚ └── status_autoclip.sh # Status check +β”œβ”€β”€ docs/ # Documentation +β”œβ”€β”€ logs/ # Log files +β”œβ”€β”€ Dockerfile # Docker image build file +β”œβ”€β”€ Dockerfile.dev # Development environment Docker file +β”œβ”€β”€ docker-compose.yml # Production environment Docker orchestration +β”œβ”€β”€ docker-compose.dev.yml # Development environment Docker orchestration +β”œβ”€β”€ docker-start.sh # Docker startup script +β”œβ”€β”€ docker-stop.sh # Docker stop script +β”œβ”€β”€ docker-status.sh # Docker status check script +β”œβ”€β”€ .dockerignore # Docker ignore file +β”œβ”€β”€ DOCKER.md # Docker deployment documentation +└── *.sh # Startup scripts +``` + +## 🌐 API Documentation + +After starting the system, visit the following addresses to view API documentation: + +- **Swagger UI**: [http://localhost:8000/docs](http://localhost:8000/docs) +- **ReDoc**: [http://localhost:8000/redoc](http://localhost:8000/redoc) + +### Main API Endpoints + +| Endpoint | Method | Description | +|----------|--------|-------------| +| `/api/v1/projects` | GET | Get project list | +| `/api/v1/projects` | POST | Create new project | +| `/api/v1/projects/{id}` | GET | Get project details | +| `/api/v1/youtube/parse` | POST | Parse YouTube video information | +| `/api/v1/youtube/download` | POST | Download YouTube video | +| `/api/v1/bilibili/download` | POST | Download Bilibili video | +| `/api/v1/projects/{id}/process` | POST | Start project processing | +| `/api/v1/projects/{id}/status` | GET | Get processing status | + +## πŸ” Troubleshooting + +### Common Issues + +#### 1. Port Occupied + +```bash +# Check port usage +lsof -i :8000 # Backend port +lsof -i :3000 # Frontend port + +# Stop occupying processes +kill -9 +``` + +#### 2. Redis Connection Failed + +```bash +# Check Redis status +redis-cli ping + +# Start Redis service +brew services start redis # macOS +systemctl start redis-server # Linux +``` + +#### 3. YouTube Download Failed + +- Check network connection +- Update yt-dlp: `pip install --upgrade yt-dlp` +- Try using browser cookies +- Check if video is available + +#### 4. Bilibili Download Failed + +- Check account login status +- Update account cookies +- Check video permission settings + +### Log Viewing + +```bash +# View all logs +tail -f logs/*.log + +# View specific service logs +tail -f logs/backend.log # Backend logs +tail -f logs/frontend.log # Frontend logs +tail -f logs/celery.log # Task queue logs +``` + +### System Status Check + +```bash +# Detailed status check +./status_autoclip.sh + +# Manual service check +curl http://localhost:8000/api/v1/health/ # Backend health check +curl http://localhost:3000/ # Frontend access test +redis-cli ping # Redis connection test +``` + +## πŸ› οΈ Development Guide + +### Backend Development + +```bash +# Activate virtual environment +source venv/bin/activate + +# Set Python path +export PYTHONPATH="${PWD}:${PYTHONPATH}" + +# Start backend development server +python -m uvicorn backend.main:app --reload --port 8000 +``` + +### Frontend Development + +```bash +# Enter frontend directory +cd frontend + +# Start development server +npm run dev +``` + +### Celery Worker + +```bash +# Start Worker +celery -A backend.core.celery_app worker --loglevel=info + +# Start Beat scheduler +celery -A backend.core.celery_app beat --loglevel=info + +# Start Flower monitoring +celery -A backend.core.celery_app flower --port=5555 +``` + +## πŸ“Š Performance Optimization + +### Production Environment Configuration + +1. **Database Optimization** + - Use PostgreSQL instead of SQLite + - Configure connection pooling + - Enable query caching + +2. **Redis Optimization** + - Configure memory limits + - Enable persistence + - Set expiration policies + +3. **Celery Optimization** + - Adjust concurrency + - Configure task routing + - Enable result backend + +## πŸ”’ Security Configuration + +### Production Environment Security + +1. **Environment Variables** + - Use strong passwords + - Regularly rotate keys + - Limit API access + +2. **Network Security** + - Configure firewall + - Use HTTPS + - Limit CORS + +3. **Data Security** + - Regular backups + - Encrypt sensitive data + - Access control + +## πŸš€ Deployment Guide + +### Docker Deployment + +#### Quick Start + +```bash +# Clone the project +git clone https://github.com/zhouxiaoka/autoclip.git +cd autoclip + +# Configure environment variables +cp env.example .env +# Edit .env file and fill in necessary configurations + +# Start all services +docker-compose up -d + +# Check service status +docker-compose ps +``` + +#### Access Services + +- **Frontend Interface**: [http://localhost:3000](http://localhost:3000) +- **Backend API**: [http://localhost:8000](http://localhost:8000) +- **API Documentation**: [http://localhost:8000/docs](http://localhost:8000/docs) +- **Flower Monitoring**: [http://localhost:5555](http://localhost:5555) + +#### Development Environment + +```bash +# Use development environment configuration +docker-compose -f docker-compose.dev.yml up -d + +# View logs in real-time +docker-compose -f docker-compose.dev.yml logs -f +``` + +#### Detailed Instructions + +Complete Docker deployment guide please refer to [DOCKER.md](DOCKER.md) documentation. + +### System Service + +```bash +# Create systemd service file +sudo nano /etc/systemd/system/autoclip.service + +[Unit] +Description=AutoClip Video Processing System +After=network.target redis.service + +[Service] +Type=forking +User=autoclip +WorkingDirectory=/opt/autoclip +ExecStart=/opt/autoclip/start_autoclip.sh +ExecStop=/opt/autoclip/stop_autoclip.sh +Restart=always + +[Install] +WantedBy=multi-user.target +``` + +## πŸ“ˆ Roadmap + +### Coming Soon + +- [ ] **Bilibili Upload Feature**: Automatic upload of clipped videos to Bilibili + with multi-account management +- [ ] **Subtitle Editing Feature**: Visual subtitle editor and synchronization functionality +- [ ] **Multi-language Support**: Support for more language video processing +- [ ] **Cloud Storage**: Integrate cloud storage services +- [ ] **Batch Processing**: Support for batch video processing +- [ ] **API Open**: Provide public API interface +- [ ] **Mobile App**: Develop mobile application + +### Long-term Planning + +- [ ] **AI Model Optimization**: Integrate more AI models +- [ ] **Real-time Collaboration**: Support multi-user collaboration +- [ ] **Plugin System**: Support third-party plugins +- [ ] **Enterprise Edition**: Enterprise-level features and services + +## 🀝 Contributing + +We welcome all forms of contributions! Whether it's code contributions, +documentation improvements, issue reports, or feature suggestions. + +### How to Contribute + +1. **Fork** the project to your GitHub account +2. Clone your Fork to local: + + ```bash + git clone https://github.com/zhouxiaoka/autoclip.git + cd autoclip + ``` + +3. Create feature branch: + + ```bash + git checkout -b feature/amazing-feature + ``` + +4. Develop and test +5. Commit changes: + + ```bash + git add . + git commit -m 'feat: add amazing feature' + ``` + +6. Push branch: + + ```bash + git push origin feature/amazing-feature + ``` + +7. Create **Pull Request** on GitHub + +### Development Standards + +#### Code Standards + +- Backend: Follow PEP 8 Python code standards +- Frontend: Use TypeScript, follow ESLint rules +- Commit messages: Use conventional commit format (feat, fix, docs, style, refactor, + test, chore) + +#### Development Process + +1. Ensure all tests pass +2. Add necessary test cases +3. Update related documentation +4. Ensure code quality checks pass + +#### Commit Message Format + +```text +(): + +[optional body] + +[optional footer(s)] +``` + +Examples: + +- `feat(api): add video download endpoint` +- `fix(ui): resolve upload modal display issue` +- `docs(readme): update installation instructions` + +## ❓ FAQ + +### Installation and Startup Issues + +**Q: What to do when ports are occupied during startup?** +A: Use the following commands to check and stop processes occupying ports: + +```bash +# Check port usage +lsof -i :8000 # Backend port +lsof -i :3000 # Frontend port + +# Stop processes +kill -9 +``` + +**Q: What to do when Redis connection fails?** +A: Ensure Redis service is running: + +```bash +# Check Redis status +redis-cli ping + +# Start Redis service +brew services start redis # macOS +sudo systemctl start redis-server # Linux +``` + +**Q: What to do when frontend dependency installation fails?** +A: Try clearing cache and reinstalling: + +```bash +cd frontend +rm -rf node_modules package-lock.json +npm cache clean --force +npm install +``` + +### Feature Usage Issues + +**Q: What to do when YouTube video download fails?** +A: + +1. Check network connection +2. Update yt-dlp: `pip install --upgrade yt-dlp` +3. Try using browser cookies +4. Check if video is available or requires login + +**Q: What to do when Bilibili video download fails?** +A: + +1. Check account login status +2. Update account cookies +3. Check video permission settings +4. Try using other accounts + +**Q: What to do when AI processing is slow?** +A: + +1. Check API key configuration +2. Adjust processing parameters (reduce chunk_size) +3. Check network connection +4. Consider using faster AI models + +**Q: When will Bilibili upload feature be available?** +A: Bilibili upload feature is currently in development and is expected to be +released in the next version. This feature will support: + +- Automatic upload of clipped videos to Bilibili +- Multi-account management and switching +- Batch upload and queue management +- Upload progress monitoring + +**Q: When will subtitle editing feature be available?** +A: Subtitle editing feature is currently in development and is expected to be +released in the next version. This feature will support: + +- Visual subtitle editor +- Subtitle timeline synchronization +- Multi-language subtitle support +- Subtitle format conversion + +### Performance Optimization + +**Q: How to improve processing speed?** +A: + +1. Increase Celery Worker concurrency +2. Use SSD storage +3. Increase system memory +4. Optimize video quality settings + +**Q: How to reduce storage space usage?** +A: + +1. Regularly clean temporary files +2. Compress output videos +3. Delete unnecessary projects +4. Use external storage + +## πŸ“ž Support & Feedback + +### Get Help + +- **Issue Reports**: [GitHub Issues](https://github.com/zhouxiaoka/autoclip/issues) +- **Feature Suggestions**: [GitHub Discussions](https://github.com/zhouxiaoka/autoclip/discussions) +- **Bug Reports**: Please use GitHub Issues template +- **Documentation**: [Project Documentation](docs/) + +### Contact + +For questions or suggestions, please contact us through: + +#### πŸ’¬ QQ + +![QQ QR Code](./qq_qr.jpg) + +#### πŸ“± Feishu + +![Feishu QR Code](./feishu_qr.jpg) + +#### πŸ“§ Other Contact Methods + +- Submit a [GitHub Issue](https://github.com/zhouxiaoka/autoclip/issues) +- Send email to: [christine_zhouye@163.com](mailto:christine_zhouye@163.com) +- Add the above QQ or Feishu contact + +## πŸ“„ License + +This project is licensed under the [MIT License](LICENSE). + +## πŸ™ Acknowledgments + +Thanks to the following open source projects and services: + +### Core Technology Stack + +- [FastAPI](https://fastapi.tiangolo.com/) - Modern Python web framework +- [React](https://reactjs.org/) - User interface library +- [Ant Design](https://ant.design/) - Enterprise-grade UI design language +- [TypeScript](https://typescriptlang.org/) - JavaScript superset +- [Celery](https://docs.celeryproject.org/) - Distributed task queue +- [Redis](https://redis.io/) - In-memory data structure store + +### Video Processing + +- [yt-dlp](https://github.com/yt-dlp/yt-dlp) - YouTube video download tool +- [FFmpeg](https://ffmpeg.org/) - Audio and video processing framework + +### AI Services + +- [Qwen](https://tongyi.aliyun.com/) - Alibaba Cloud large language model service +- [DashScope](https://dashscope.aliyun.com/) - Alibaba Cloud AI service platform + +### Development Tools + +- [Vite](https://vitejs.dev/) - Frontend build tool +- [Zustand](https://github.com/pmndrs/zustand) - State management library +- [Pydantic](https://pydantic-docs.helpmanual.io/) - Data validation library + +### Special Thanks + +- All developers contributing to the open source community +- Users providing feedback and suggestions +- Community members participating in testing and code contributions + +--- + +## If this project helps you, please give us a ⭐ Star + +[![Star History Chart](https://api.star-history.com/svg?repos=zhouxiaoka/autoclip&type=Date)](https://star-history.com/#zhouxiaoka/autoclip&Date) + +Made with ❀️ by AutoClip Team + +⭐ If you find it useful, please give us a Star!