diff --git a/README.md b/README.md new file mode 100644 index 0000000..af094a2 --- /dev/null +++ b/README.md @@ -0,0 +1,100 @@ +# 笔记应用 (Biji App) + +这是一个功能完善的全栈笔记应用程序,采用前后端分离架构。前端使用 Vue 3 构建,后端使用 Spring Boot 3 实现。 + +## ✨ 功能特性 (Features) + +* **用户认证**: 支持用户注册、登录和 JWT (JSON Web Token) 认证。 +* **Markdown 笔记**: 提供功能强大的 Markdown 编辑器,支持实时预览和丰富的格式化选项。 +* **图片管理**: 支持在笔记中上传、插入和管理图片。 +* **笔记组织**: 用户可以创建分组 (Categories/Groups) 来管理和组织笔记。 +* **回收站**: 提供回收站功能,可以恢复被误删除的笔记或分组。 +* **系统设置**: 提供基本的系统配置功能。 + +## 🛠️ 技术栈 (Tech Stack) + +### 后端 (Backend - `biji-houdaun`) + +* **框架 (Framework)**: Spring Boot 3.5.0 +* **语言 (Language)**: Java 17 +* **数据访问 (Data Access)**: MyBatis-Plus 3.5.7 +* **数据库 (Database)**: SQLite +* **API 文档 (API Docs)**: Knife4j / SpringDoc +* **安全 (Security)**: Spring Security, JJWT +* **工具库 (Utilities)**: Lombok, Hutool, Commons Codec + +### 前端 (Frontend - `biji-qianduan`) + +* **框架 (Framework)**: Vue 3 +* **构建工具 (Build Tool)**: Vite +* **UI 库 (UI Library)**: Element Plus +* **状态管理 (State Management)**: Pinia +* **路由 (Routing)**: Vue Router +* **Markdown 编辑器**: Vditor / @kangc/v-md-editor +* **HTTP 客户端 (HTTP Client)**: Axios (封装在 `src/utils/axios.js` 中) + +## 📂 项目结构 (Project Structure) + +``` +. +├── biji-houdaun/ # 后端 Spring Boot 项目 +│ ├── src/main/java/ # Java 源码 +│ │ └── com/test/bijihoudaun/ +│ │ ├── controller/ # API 控制器 +│ │ ├── service/ # 业务逻辑服务 +│ │ ├── mapper/ # MyBatis 数据映射 +│ │ ├── entity/ # 数据库实体 +│ │ ├── config/ # 应用配置 +│ │ └── common/ # 通用工具 (异常处理、响应) +│ └── pom.xml # Maven 依赖配置 +│ +├── biji-qianduan/ # 前端 Vue 项目 +│ ├── src/ # 前端源码 +│ │ ├── api/ # API 请求模块 +│ │ ├── assets/ # 静态资源 (CSS, images) +│ │ ├── components/ # Vue 组件 +│ │ ├── router/ # 路由配置 +│ │ ├── stores/ # Pinia 状态管理 +│ │ └── utils/ # 工具函数 +│ └── package.json # NPM 依赖配置 +│ +├── sql/ # 数据库初始化脚本 +├── uploads/ # 用户上传文件目录 +├── doc/ # 项目相关文档 +└── README.md # 本文档 +``` + +## 🚀 快速开始 (Getting Started) + +### 环境要求 + +* JDK 17 +* Maven 3.x +* Node.js 18+ +* pnpm (或 npm/yarn) + +### 后端启动 + +1. **克隆项目**: `git clone ` +2. **数据库初始化**: 使用 `sql/` 目录下的脚本初始化 SQLite 数据库 (`mydatabase.db`)。 +3. **配置**: 检查 `biji-houdaun/src/main/resources/application-dev.yml` 中的配置是否正确。 +4. **运行**: 在 `biji-houdaun` 目录下,通过 IDE 直接运行 `BijiHoudaunApplication.java` 或使用 Maven: + ```bash + mvn spring-boot:run + ``` + +### 前端启动 + +1. **进入目录**: `cd biji-qianduan` +2. **安装依赖**: + ```bash + pnpm install + # 或者使用 npm / yarn + # npm install + # yarn install + ``` +3. **运行开发服务器**: + ```bash + pnpm dev + ``` +4. **访问应用**: 在浏览器中打开 `http://localhost:5173` (或其他 Vite 指定的端口)。