# MixVideo 🎬 **MixVideo** - 基于 Tauri 构建的跨平台多媒体处理桌面应用 ## ✨ 特性 - 🚀 **跨平台**: 支持 Windows、macOS、Linux - ⚡ **高性能**: 基于 Rust + Tauri 2.0 构建 - 🎨 **现代界面**: React + TypeScript + Vite - 🔧 **可扩展**: 支持多语言微服务架构 - 📦 **多包管理**: PNPM Workspace + Cargo Workspace ## 🏗️ 项目结构 ``` mixvideo/ ├── apps/ │ └── desktop/ # Tauri 桌面应用 ├── packages/ │ ├── services/ # 微服务 (Python, Rust) │ └── shared/ # 共享代码和协议 ├── tools/ # 开发工具 └── docs/ # 文档 ``` ## 🚀 快速开始 ### 环境要求 - **Node.js** 18+ - **Rust** 1.70+ - **PNPM** 8+ ### 安装依赖 ```bash pnpm install ``` ### 开发模式 ```bash # 启动桌面应用开发模式 pnpm tauri:dev # 或者直接在 apps/desktop 目录下 cd apps/desktop pnpm dev ``` ### 构建应用 ```bash # 构建生产版本 pnpm tauri:build # 或者在 apps/desktop 目录下 cd apps/desktop pnpm tauri build ``` ## 📦 发布 ### 手动发布 1. 构建应用: `pnpm tauri:build` 2. 安装包位置: `target/release/bundle/` - Windows: `.msi` 和 `.exe` 安装包 - macOS: `.dmg` 和 `.app` 包 - Linux: `.deb`, `.rpm` 和 `.AppImage` ### 自动发布 (GitHub Actions) 1. 创建新的 Git 标签: ```bash git tag v0.1.0 git push origin v0.1.0 ``` 2. GitHub Actions 将自动构建并创建 Release ## 🛠️ 技术栈 ### 桌面应用 - **前端**: React 18 + TypeScript + Vite - **后端**: Rust + Tauri 2.0 - **状态管理**: 待定 - **UI 组件**: 待定 ### 微服务 (计划中) - **Python 服务**: FastAPI + gRPC - **Rust 服务**: Tonic + gRPC - **通信协议**: Protocol Buffers ## 📝 开发指南 ### 推荐 IDE - **VS Code** + 扩展: - Tauri - rust-analyzer - ES7+ React/Redux/React-Native snippets ### 代码规范 - **Rust**: 使用 `cargo fmt` 和 `cargo clippy` - **TypeScript**: 使用 ESLint + Prettier - **Python**: 使用 Black + isort + flake8 ## 🤝 贡献 欢迎提交 Issue 和 Pull Request! ## 📄 许可证 MIT License - 详见 [LICENSE](LICENSE) 文件 ## 👨‍💻 作者 **imeepos** - [GitHub](https://github.com/imeepos)