# 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 授权。