diff --git a/.serena/.gitignore b/.serena/.gitignore new file mode 100644 index 0000000..14d86ad --- /dev/null +++ b/.serena/.gitignore @@ -0,0 +1 @@ +/cache diff --git a/.serena/memories/project_overview.md b/.serena/memories/project_overview.md new file mode 100644 index 0000000..d861343 --- /dev/null +++ b/.serena/memories/project_overview.md @@ -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/Format:ESLint + 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` 自动保存;应用启动时支持恢复上次未保存内容。 \ No newline at end of file diff --git a/.serena/memories/project_structure.md b/.serena/memories/project_structure.md new file mode 100644 index 0000000..7f7a4d1 --- /dev/null +++ b/.serena/memories/project_structure.md @@ -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`)。 \ No newline at end of file diff --git a/.serena/memories/style_and_conventions.md b/.serena/memories/style_and_conventions.md new file mode 100644 index 0000000..abc713e --- /dev/null +++ b/.serena/memories/style_and_conventions.md @@ -0,0 +1,33 @@ +# yys-editor 技术栈与风格约定 + +技术栈 +- 前端框架:Vue 3(Composition API,部分 SFC 使用 `