This commit is contained in:
2025-12-26 22:33:30 +08:00
parent 869201d08a
commit 93a8eb9ffb
10 changed files with 581 additions and 2 deletions

View File

@@ -0,0 +1,27 @@
# 项目概览yys-editor
目标与定位
- yys-editor 是一个基于浏览器的可视化编辑器,用于拖拽排布素材并生成展示效果(围绕式神/御魂等要素)。
- 适合快速制作、调整与导出展示图(如阵容/排行等)。
技术要点
- Vue 3 + Vite + Element Plus + Pinia + vue-i18n
- 入口:`index.html` -> `/src/main.js` -> `App.vue`
- 路径别名:`@` -> `src/`
- 资源:大量静态图片位于 `public/assets/`
- 语言中文、日文从浏览器语言推断fallback 为 `zh`
当前现状
- 包管理器npm存在 `package-lock.json`
- 脚本:`dev`/`build`/`preview`/`lint`/`format`
- Lint/FormatESLint + Prettier无项目级 Prettier 配置文件,使用默认)
- 测试:未配置自动化测试
典型编辑流程
1) `npm install`
2) `npm run dev` 在 http://localhost:5173/ 进行开发与手动验收
3) `npm run lint` + `npm run format` 保持风格统一
4) `npm run build` 产出 `dist/``npm run preview` 进行生产包预览
其它
- 状态存储使用 Pinia并通过 `localStorage` 自动保存;应用启动时支持恢复上次未保存内容。

View File

@@ -0,0 +1,30 @@
# yys-editor 项目结构(概要)
根目录
- `index.html`Vite 入口 HTML挂载点 `#app`,引入 `/src/main.js`
- `package.json` / `package-lock.json`npm 包与脚本;包管理器为 npm。
- `vite.config.js`Vite 配置,`@` -> `src/`
- `jsconfig.json`:编辑器路径提示(`@/*` -> `./src/*`)。
- `.gitignore`:忽略 `node_modules/``dist/` 等。
- `.vscode/`推荐扩展Volar
- `README.md`:项目说明(中文)。
- `public/`:静态资源目录(大量图片素材:`assets/Shikigami`, `assets/Yuhun` 等)。
`src/`
- `main.js`:应用入口,注册 Element Plus、Icons、vue-i18n、Pinia、vue3-draggable-resizable挂载 `App.vue`
- `App.vue`:主布局(工具栏、侧边栏、工作区 Tab根据文件类型切换主要编辑视图。
- `components/`
- 核心:`Yys.vue`, `YysRank.vue`, `Toolbar.vue`, `ProjectExplorer.vue`
- 基础:`ShikigamiSelect.vue`, `YuhunSelect.vue`, `Watermark.vue`, `HelloWorld.vue`
- `components/icons/`:若干图标组件
- `assets/`:基础样式 `base.css`, `main.css` 与 logo 等
- `data/`:若干 JSON 数据(如 `Shikigami.json`, `Yuhun.json`, `property.json`, `updateLog.json`
- `locales/`:多语言资源 `zh.json``ja.json`
- `ts/`:脚本与 store
- `files.ts`Pinia store文件页签、可见性、删除/重命名;含 `localStorage` 自动保存与启动恢复提示)
- `useGlobalMessage.ts`全局消息Element Plus
- `types/`:类型定义(如后续扩展)
说明
- 未见 `router` 相关文件;当前为单页多区域布局。
- 构建产物输出到 `dist/``npm run build`)。

View File

@@ -0,0 +1,33 @@
# yys-editor 技术栈与风格约定
技术栈
- 前端框架Vue 3Composition API部分 SFC 使用 `<script setup lang="ts">`
- 构建与开发Vite
- UI 组件Element Plus`@element-plus/icons-vue`
- 状态管理Pinia示例`src/ts/files.ts` 存储文件页签等,含本地存储自动保存)
- 国际化vue-i18n`src/locales/zh.json` + `src/locales/ja.json`默认从浏览器语言推断fallback 为 `zh`
- 拖拽缩放vue3-draggable-resizable
- 其它依赖:`@vueup/vue-quill`(如后续使用富文本)/ `html2canvas` / `vuedraggable`
工程与路径
- 别名:`@` 指向 `src/`(见 `vite.config.js``jsconfig.json`)。
- 入口:`index.html` -> `/src/main.js` -> `App.vue`
- 静态资源:`public/`(大量图片素材位于 `public/assets/...`)。
代码风格
- 代码格式Prettier未见项目级配置使用默认规则脚本仅格式化 `src/`)。
- 语法检查ESLint`eslint-plugin-vue` + `@vue/eslint-config-prettier`;脚本已启用 `--fix`)。
- 组件命名PascalCase 单文件组件(`.vue`),按功能归档于 `src/components/`
- 类型:以 JS 为主SFC 中可使用 TS经 Vite/ESBuild 处理,无专门 `tsconfig.json`,有 `jsconfig.json` 路径提示)。
- 国际化:新增/修改文案时,请同步维护 `zh.json``ja.json`,避免硬编码 UI 文案。
- 状态与持久化Pinia store 通过 `localStorage` 自动保存,注意 key 兼容;涉及 schema 变更时考虑迁移逻辑。
样式
- 常规样式位于 `src/assets/*.css`,组件中常用 `<style scoped>` 以局部隔离。
- UI 主题由 Element Plus 提供,如需自定义主题请统一约定变量来源。
提交与约定
- 未发现提交规范配置(如 commitlint/husky建议信息清晰、原子化提交。必要时中英文均可但保持一致性。
测试
- 未配置自动化测试框架;变更请重点进行手动验收(参见 `task_completion_checklist.md`)。

View File

@@ -0,0 +1,26 @@
# yys-editor 常用命令Windows/PowerShell
- 安装依赖:
- `npm install`
- 本地开发Vite 开发服务器,默认 http://localhost:5173/
- `npm run dev`
- 生产构建(输出到 `dist/`
- `npm run build`
- 本地预览生产包:
- `npm run preview`
- 代码检查ESLint自动修复
- `npm run lint`
- 代码格式化Prettier`src/` 目录):
- `npm run format`
辅助命令PowerShell 常用):
- 进入目录/查看/读取文件:`cd`, `ls` (Get-ChildItem), `cat file` (Get-Content -Raw)
- 删除/复制/移动:`rm -r -Force path` (Remove-Item), `cp src dst` (Copy-Item), `mv src dst` (Move-Item)
- Git`git status`, `git add -p`, `git commit -m "msg"`, `git switch -c <branch>`, `git push`
- 进程占用端口排查(可选):`Get-Process``netstat -ano | findstr 5173`
- 快速全文搜索(若已安装):`rg "pattern"`
说明:
- 包管理器使用 npm`package-lock.json`)。
- Vite 默认端口 5173未在 `vite.config.js` 中覆写。
- 项目未配置自动化测试命令。

View File

@@ -0,0 +1,22 @@
# 任务完成前检查清单yys-editor
功能与兼容
- 本地自测通过:`npm run dev` 无报错、关键路径可用(切换 Tab、新增/删除文件、编辑视图渲染、国际化切换等)。
- UI 走查常用分辨率下布局正常Toolbar、侧边栏、工作区滚动
- 资源校验:新增素材放入 `public/assets/...`,路径正确;体积适中(尽量压缩)。
- i18n新增/修改的 UI 文案同步维护 `src/locales/zh.json``src/locales/ja.json`
代码质量
- 语法检查:`npm run lint`(包含 `--fix` 自动修复)。
- 代码格式:`npm run format`(当前仅格式化 `src/` 目录)。
- 引用规范:优先使用 `@/...` 别名;避免相对路径层级过深。
- 状态与持久化:如更改 `files` store 结构,评估 `localStorage` 兼容/迁移策略。
构建与预览
- 生产构建:`npm run build` 成功,产物在 `dist/`
- 生产预览:`npm run preview` 本地检查基础路由与功能。
提交
- 更新文档(如需):`README.md` 或注释。
- Git 提交清晰、原子:`git add -p``git commit -m "feat/fix: ..."`
- 如涉及较大静态资源,建议说明来源与 License。