commit 16b9a007a6a8cfc45a95e4852f27e0db4fd3cdd0 Author: 949036910@qq.com <> Date: Sat May 30 18:45:08 2026 +0800 11111 diff --git a/.cursor/rules/aiclient-ui-overview.mdc b/.cursor/rules/aiclient-ui-overview.mdc new file mode 100644 index 0000000..e3a59ea --- /dev/null +++ b/.cursor/rules/aiclient-ui-overview.mdc @@ -0,0 +1,33 @@ +--- +description: aiclient_ui 前端项目约定 +alwaysApply: true +--- + +# aiclient_ui 项目约定 + +## 职责 + +本仓库仅包含 **Vue 3 前端**,不含 Tauri / Rust。桌面壳在同级目录 `../aiclient`。 + +## 技术栈 + +- Vue 3 + Vite 6,**纯 JavaScript** +- Tailwind CSS v4 + PrimeVue 4 +- Pinia + Vue Router +- `@tauri-apps/api`:在 Tauri 窗口内调用桌面能力 + +## 常用命令 + +- `npm run dev` — http://localhost:1420 +- `npm run build` — 输出 `dist/`(本地预览) +- `npm run build:deploy` — 部署到服务器静态目录(桌面端 Release 加载此地址) + +## API + +- 基址:`VITE_API_BASE_URL`(见 `.env.example`) +- 开发代理:`vite.config.js` 将 `/api` 代理到 `http://127.0.0.1:8001` +- 响应信封 `ApiResponse` 约定见 aiclient 或 pythonbackend 规则 + +## 通用原则 + +- 界面文案默认简体中文 diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..1b2b81c --- /dev/null +++ b/.env.example @@ -0,0 +1,2 @@ +# 开发默认走 Vite 代理 /api -> http://127.0.0.1:8001 +VITE_API_BASE_URL=http://81.70.234.81:8001/api/v1 diff --git a/.env.production b/.env.production new file mode 100644 index 0000000..c97115b --- /dev/null +++ b/.env.production @@ -0,0 +1 @@ +VITE_API_BASE_URL=http://81.71.163.140:8001/api/v1 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a181881 --- /dev/null +++ b/.gitignore @@ -0,0 +1,22 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store + +.env +.env.local diff --git a/README.md b/README.md new file mode 100644 index 0000000..fcfa706 --- /dev/null +++ b/README.md @@ -0,0 +1,33 @@ +# aiclient-ui + +aiclient 桌面端的前端工程(Vue 3 + Vite 6)。 + +## 技术栈 + +- Vue 3、Vue Router、Pinia +- PrimeVue 4 + Tailwind CSS v4 +- 通过 `@tauri-apps/api` 调用桌面壳能力(开发时由 `aiclient` 仓库的 Tauri 加载) + +## 常用命令 + +```bash +npm install +npm run dev # 仅 Web 开发,http://localhost:1420 +npm run build # 输出到 dist/(本地预览) +npm run build:deploy # 部署到服务器(发布前端请用此命令) +``` + +## 与 aiclient(Tauri)联调 + +桌面壳 **不打包** 本仓库资源;发布版直接加载服务器上的静态页。 + +在 `../aiclient` 目录执行: + +```bash +npm install +npm run dev # 调试:WebView 连 http://localhost:1420 +``` + +## 环境变量 + +见 `.env.example`。`VITE_API_BASE_URL` 为业务 API 基址;开发时 `/api` 由 Vite 代理到 `http://127.0.0.1:8001`。 diff --git a/index.html b/index.html new file mode 100644 index 0000000..34643ac --- /dev/null +++ b/index.html @@ -0,0 +1,12 @@ + + +
+ + +{{ subtitle }}
++ 勾选后启用关键词特效功能,AI 自动识别字幕中的关键词并添加醒目的放大特效 +
++ 内联字幕用于新模板,浮动特效用于旧模板 +
++ {{ + keywordRenderMode === "inline-emphasis" + ? "关键词会直接嵌在普通字幕里放大显示,不再单独飞出" + : "关键词会按旧模板方式单独触发浮动/动画特效" + }} +
++ 注:FFmpeg 不支持阴影模糊,实际视频中仅显示阴影偏移效果 +
++ 背景和描边可同时使用(后端支持 BorderStyle=4) +
+修改完成后请点击底部的「保存模板」按钮
+{{ recordError }}
++ 已达上限(5/5) +
+ +暂无对标
++ 请先选择一个对标 +
++ 采集完成后将显示视频标题 +
++ {{ ipTopicRewriteProgress }} +
++ 请先选择一个对标 +
++ 点击右侧刷新按钮,根据选题库一键生成仿写标题 +
++ {{ topicFeedback.message }} +
++ {{ hitScriptFeedback.message }} +
++ {{ feedback.message }} +
++ 暂无音频,请填写文案后点击「生成语音」 +
++ {{ greenScreenFileName }} +
++ 请先在步骤 02 生成口播视频 +
+ ++ {{ feedback.message }} +
+ ++ 请先在步骤 01 填写或生成视频文案 +
+ ++ {{ feedback.message }} +
+ ++ 已添加 {{ workflow.keywordCountFocus }} 个关键词 +
++ 已添加 {{ workflow.keywordCountDescribe }} 个关键词 +
++ 已添加 {{ workflow.keywordCountAction }} 个关键词 +
++ 已添加 {{ workflow.keywordCountEmotion }} 个关键词 +
++ 提取视频音频并识别,烧录 SRT 字幕到画面 +
+ + ++ 用步骤 01 文案替换识别文本,保留语音时间轴 +
+ ++ {{ workflow.bgmFileName }} +
+ + ++ 请先在步骤 02 生成口播视频 +
+ ++ {{ feedback.message }} +
+ + + ++ 请先在步骤 02 生成口播视频 +
++ 请先在步骤 04 生成标题文字 +
+ ++ {{ feedback.message }} +
+ ++ 请先在步骤 02 生成口播视频 +
++ 请先在步骤 06 生成封面 +
++ 请先在步骤 04 生成标题 +
+ ++ {{ feedback.message }} +
+ ++ 定时发布:{{ new Date(publishScheduledAt).toLocaleString("zh-CN") }} + +
+ ++ 首次发布:请手动关闭浏览器内出现的任何弹窗提示(说明等),防止干扰脚本,下次即可流畅运行 +
+ + + + ++ {{ feedback.message }} +
++ {{ feedback.message }} +
+ +