Skip to content

项目结构

本页详细介绍项目的目录结构。

根目录

wenyanwengongju/
├── src/                    # 源代码
├── main/                   # Electron 主进程
├── public/                 # 静态资源
├── tests/                  # 测试文件
├── config/                 # 配置文件
├── .github/                # GitHub 配置
├── package.json            # 项目配置
├── tsconfig.json           # TypeScript 配置
├── next.config.js          # Next.js 配置
└── vitest.config.ts        # Vitest 配置

src 目录

src/
├── app/                    # Next.js App Router 页面
│   ├── page.tsx           # 首页
│   ├── layout.tsx         # 根布局
│   ├── import/            # 导入功能
│   │   └── page.tsx
│   ├── organize/          # 整理功能
│   │   └── page.tsx
│   ├── ai-organize/       # AI 整理
│   │   └── page.tsx
│   ├── exam/              # 自动出题
│   │   └── page.tsx
│   ├── manage/            # 管理功能
│   │   ├── definitions/   # 义项管理
│   │   ├── key-characters/# 重点字管理
│   │   └── concurrency-settings/
│   ├── settings/          # 设置页面
│   │   └── page.tsx
│   └── regex-generator/   # 正则生成器
│       └── page.tsx

├── components/            # 可复用组件
│   ├── Layout.tsx        # 布局组件
│   ├── Layout.module.css
│   ├── MindMapCanvas.tsx # 思维导图画布
│   ├── SearchPage.tsx    # 搜索组件
│   └── CustomMultiSelect.tsx

├── services/             # 业务逻辑服务
│   ├── storage.ts        # 数据存储
│   ├── ai.ts             # AI 服务
│   ├── examGenerator.ts  # 出题引擎
│   ├── mindmap.ts        # 思维导图
│   ├── aiOrganize.ts     # AI 整理
│   ├── shortSentence.ts  # 短句服务
│   ├── wordExport.ts     # Word 导出
│   └── concurrencyConfig.ts

├── stores/               # Zustand 状态管理
│   └── ...

├── types/                # TypeScript 类型定义
│   └── ...

└── utils/                # 工具函数
    └── ...

main 目录

main/
├── index.js              # Electron 入口
├── preload.js            # 预加载脚本
└── ...

tests 目录

tests/
├── unit/                 # 单元测试
│   ├── storage.test.ts
│   ├── examGenerator.test.ts
│   └── ...
├── integration/          # 集成测试
│   └── ...
└── fixtures/             # 测试数据
    └── ...

配置文件

文件说明
package.json项目依赖和脚本
tsconfig.jsonTypeScript 配置
next.config.jsNext.js 配置
vitest.config.ts测试配置
config.example.json配置文件模板

命名规范

类型命名方式示例
组件PascalCaseSearchPage.tsx
服务camelCaseexamGenerator.ts
样式同组件名SearchPage.module.css
测试同源文件 + .teststorage.test.ts
类型PascalCaseDefinition.ts

基于 MIT 许可发布