vitesse-yitisheng-web/project_index.md

189 lines
5.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Project File Index
- `src/utils/message.ts`: Global message utility.
- `src/utils/loading.ts`: Global loading utility (blocking overlay).
- `src/service/request/index.ts`: Axios wrapper.
- `src/service/api/auth.ts`: Authentication API.
- `src/service/api/score.ts`: Score API.
- `src/service/api/major.ts`: User major recommendation API.
- `src/stores/user.ts`: User Pinia store.
- `src/stores/score.ts`: Score Pinia store.
- `src/components/ui/WMessage.vue`: Message component UI.
- `src/components/ui/WLoading.vue`: Full-screen loading component UI.
- `src/components/TheNavigation.vue`: Main navigation component.
- `src/components/ScoreForm.vue`: Score editing form.
- `src/pages/index.vue`: Home page with dashboard/welcome sidebar.
- `src/pages/agreement.vue`: User agreement page.
- `src/pages/privacy-policy.vue`: Privacy policy page.
- `src/pages/simulate.vue`: Simulation and volunteer filling page.
- `src/service/api/volunteer.ts`: Volunteer management API.
## 完整项目结构
### 项目根目录
```
D:\workspace_4\yitisheng\vitesse-yitisheng-web/
├── .agent/ # Agent相关配置
├── .iflow/ # iFlow相关配置
├── .kilocode/ # Kilocode相关配置
├── .trae/ # Trae相关配置
├── .vscode/ # VSCode配置
├── cypress/ # E2E测试配置
├── docs/ # 项目文档
├── locales/ # 多语言配置文件
├── public/ # 静态资源文件
├── src/ # 源代码目录
├── tasks/ # 任务相关文件
├── test/ # 测试文件
├── .dockerignore
├── .editorconfig
├── .env.development
├── .env.production
├── .gitignore
├── .npmrc
├── 1212.txt
├── cypress.config.ts
├── Dockerfile
├── eslint.config.js
├── index.html
├── jsconfig.json
├── LICENSE
├── netlify.toml
├── package.json
├── pnpm-lock.yaml
├── pnpm-workspace.yaml
├── postcss.config.js
├── prettier.config.mjs
├── project_codebase.md
├── project_doing.md
├── project_index.md
├── project_task.md
├── README.md
├── tailwind.config.js
├── task_detail.md
├── tsconfig.json
├── uno.config.ts
├── vite.config.ts
```
### 源代码目录 (src/)
```
src/
├── components/ # 组件目录
│ ├── ui/ # UI组件
│ │ ├── WLoading.vue
│ │ ├── WMessage.vue
│ │ ├── WOption.vue
│ │ ├── WPopconfirm.vue
│ │ ├── WRadioButton.vue
│ │ ├── WRadioGroup.vue
│ │ └── WSelect.vue
│ ├── BackToTop.vue
│ ├── FilterBar.vue
│ ├── LoginForm.vue
│ ├── README.md
│ ├── ScoreForm.vue
│ ├── TheCounter.vue
│ ├── TheFooter.vue
│ ├── TheInput.vue
│ └── TheNavigation.vue
├── composables/ # Vue Composables
│ ├── dark.ts
│ └── request.ts
├── layouts/ # 布局组件
│ ├── 404.vue
│ ├── default.vue
│ ├── home.vue
│ └── README.md
├── lib/ # 第三方库
├── modules/ # 项目模块
│ ├── i18n.ts
│ ├── nprogress.ts
│ ├── pinia.ts
│ ├── pwa.ts
│ └── README.md
├── pages/ # 页面组件(基于文件路由)
│ ├── demo/
│ │ └── pop-confirm.vue
│ ├── hi/
│ │ └── [name].vue
│ ├── school/
│ │ └── [schoolCode].vue
│ ├── [...all].vue
│ ├── about.md
│ ├── about.vue
│ ├── agreement.vue
│ ├── contact-us.vue
│ ├── index.vue
│ ├── majors.vue
│ ├── privacy-policy.vue
│ ├── README.md
│ ├── simulate.vue
│ └── universities.vue
├── service/ # 服务层
│ ├── api/ # API接口
│ │ ├── auth.ts
│ │ ├── major.ts
│ │ ├── score.ts
│ │ └── volunteer.ts
│ └── request/ # 请求封装
│ └── index.ts
├── stores/ # 状态管理 (Pinia)
│ ├── score.ts
│ └── user.ts
├── styles/ # 样式文件
│ ├── main.css
│ └── markdown.css
├── utils/ # 工具函数
│ ├── loading.ts
│ └── message.ts
├── App.vue # 根组件
├── auto-imports.d.ts
├── components.d.ts
├── main.ts # 入口文件
├── shims.d.ts
├── typed-router.d.ts
└── types.ts # 类型定义
```
### 静态资源目录 (public/)
```
public/
├── assets/
│ └── fonts/ # 字体文件
├── _headers
├── beian.ico
├── download.png
├── favicon-dark.svg
├── favicon.svg
├── pwa-192x192.png
├── pwa-512x512.png
└── safari-pinned-tab.svg
```
### 服务API目录 (src/service/api/)
```
src/service/api/
├── auth.ts # 认证相关API
├── major.ts # 专业相关API
├── score.ts # 成绩相关API
├── volunteer.ts # 志愿相关API
```
### 项目特点
- 基于 Vitesse 模板Vue 3 + Vite
- 使用 TypeScript
- 采用 Vue 3 Composition API
- 使用 Pinia 进行状态管理
- 支持国际化 (i18n)
- 使用 UnoCSS 作为样式引擎
- 包含 PWA 支持
- 包含组件自动化加载
- 基于文件的路由系统
- 包含服务端生成 (SSG) 支持