cwchang's picture
feat: add Qwen3-TTS voice cloning application
62132be
# Qwen3-TTS Frontend
这是 Qwen3-TTS 语音克隆项目的前端界面实现。
## 技术栈
- **React 18** - UI 框架
- **TypeScript** - 类型安全
- **Tailwind CSS** - 样式框架
- **Vite** - 构建工具
- **Lucide React** - 图标库
## 快速开始
### 1. 安装依赖
```bash
cd frontend
npm install
```
### 2. 启动开发服务器
```bash
npm run dev
```
应用将在 http://localhost:3000 启动。
### 3. 构建生产版本
```bash
npm run build
```
构建产物将生成在 `dist/` 目录。
### 4. 预览生产构建
```bash
npm run preview
```
## 项目结构
```
frontend/
├── src/
│ ├── App.tsx # 主应用组件
│ ├── main.tsx # 应用入口
│ └── index.css # 全局样式
├── index.html # HTML 模板
├── package.json # 项目依赖
├── tailwind.config.js # Tailwind 配置
├── vite.config.ts # Vite 配置
└── tsconfig.json # TypeScript 配置
```
## 功能特性
- ✅ 响应式导航栏
- ✅ 醒目的 Hero 区域
- ✅ 语音克隆操作界面
- 参考音频上传区
- 参考文本输入框
- 目标文本输入框
- 语言和模型选择
- 生成按钮
- 音频输出显示
- ✅ 完整的页脚
- ✅ 深色主题配色
- ✅ 渐变色和阴影效果
## 与后端集成
目前这是纯前端实现。要连接到 Python 后端,需要:
1. 在后端创建 API 端点(FastAPI 或 Flask)
2. 在前端添加 API 调用逻辑
3. 处理文件上传和音频生成
示例 API 端点结构:
- `POST /api/upload` - 上传参考音频
- `POST /api/clone` - 生成克隆语音
- `GET /api/output/:id` - 获取生成的音频
## 自定义配色
颜色在 `tailwind.config.js` 中定义:
```javascript
colors: {
background: {
primary: '#0a0d14',
secondary: '#0f1218',
tertiary: '#151820',
elevated: '#1e2532',
},
brand: {
primary: '#6366f1',
secondary: '#8b5cf6',
},
// ...更多颜色
}
```
## 浏览器支持
- Chrome/Edge (最新版本)
- Firefox (最新版本)
- Safari (最新版本)
## License
遵循主项目的 Apache 2.0 授权。