# ProjectNavigation **Repository Path**: JIuyang2284/ProjectNavigation ## Basic Information - **Project Name**: ProjectNavigation - **Description**: 项目导航管理系统 - Spring Boot + Vue3 - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-16 - **Last Updated**: 2026-02-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Project Navigation ## 项目简介 Project Navigation 是一个基于 Spring Boot + Vue 3 的项目导航管理平台,提供项目展示和管理功能。平台支持亮/暗主题切换,提供完整的项目增删改查接口。 ## 技术栈 ### 后端技术 - **Spring Boot 3.2** - 后端框架 - **MyBatis-Plus** - ORM 框架 - **Sa-Token** - 权限认证框架 - **MySQL** - 数据库 ### 前端技术 - **Vue 3** - 前端框架 - **TypeScript** - 类型安全 - **Vite** - 构建工具 - **Pinia** - 状态管理 - **Vue Router** - 路由管理 - **Element Plus** - UI 组件库 - **SCSS** - CSS 预处理器 ## 项目结构 ``` project-navigation/ ├── backend/ # 后端项目 │ ├── src/main/java/com/jiuyang/navigation/ │ │ ├── common/ # 公共类 │ │ ├── config/ # 配置类 │ │ ├── controller/ # 控制器 │ │ ├── dto/ # 数据传输对象 │ │ ├── entity/ # 实体类 │ │ ├── exception/ # 异常处理 │ │ ├── mapper/ # 数据访问层 │ │ ├── service/ # 服务层 │ │ └── NavigationApplication.java │ ├── src/main/resources/ │ │ ├── application.yml # 主配置文件 │ │ ├── application-dev.yml # 开发环境配置 │ │ ├── application-prod.yml # 生产环境配置 │ │ └── schema.sql # 数据库脚本 │ └── pom.xml ├── frontend/ # 前端项目 │ ├── src/ │ │ ├── api/ # API 接口 │ │ ├── components/ # 公共组件 │ │ ├── router/ # 路由配置 │ │ ├── stores/ # 状态管理 │ │ ├── styles/ # 样式文件 │ │ ├── types/ # 类型定义 │ │ ├── utils/ # 工具函数 │ │ ├── views/ # 页面视图 │ │ ├── App.vue │ │ └── main.ts │ ├── index.html │ ├── package.json │ ├── vite.config.ts │ └── tsconfig.json ``` ## API 接口 ### 认证接口 | 方法 | 路径 | 说明 | | ---- | ------------------ | ------------ | | POST | `/api/auth/login` | 用户登录 | | POST | `/api/auth/logout` | 用户登出 | | GET | `/api/auth/check` | 检查登录状态 | ### 项目接口 | 方法 | 路径 | 说明 | | ------ | -------------------------- | ------------------ | | GET | `/api/projects` | 获取所有项目 | | GET | `/api/projects/{id}` | 获取单个项目 | | POST | `/api/admin/projects` | 添加项目(需登录) | | PUT | `/api/admin/projects/{id}` | 更新项目(需登录) | | DELETE | `/api/admin/projects/{id}` | 删除项目(需登录) | ## 快速开始 ### 环境要求 - JDK 17+ - MySQL 5.7+ - Node.js 16+ - Maven 3.6+ ### 后端配置 1. 创建数据库并执行初始化脚本: ```sql CREATE DATABASE project_navigation; USE project_navigation; -- 执行 schema.sql 中的初始化脚本 ``` 2. 配置环境变量(或创建 `application-local.yml`): ```bash export DB_HOST=localhost export DB_USERNAME=your_username export DB_PASSWORD=your_password ``` 3. 启动后端服务: ```bash cd backend mvn spring-boot:run ``` 后端服务默认运行在 http://localhost:2284 ### 前端配置 1. 安装依赖: ```bash cd frontend npm install ``` 2. 启动开发服务器: ```bash npm run dev ``` 前端服务默认运行在 http://localhost ## 默认账号 初始化脚本会创建默认管理员账号: - 用户名:`admin` - 密码:`admin123456` > ⚠️ 请在生产环境中及时修改默认密码 ## 项目预览 - **首页**:展示所有项目 - **登录页**:管理员登录 - **管理页**:项目增删改管理(需登录) ## 功能特性 - ✅ 项目展示与管理 - ✅ 管理员认证系统(Sa-Token) - ✅ 亮/暗主题切换 - ✅ RESTful API 设计 - ✅ 响应式布局 - ✅ TypeScript 支持 - ✅ Element Plus UI ## License 本项目采用 GPL-3.0 开源,基于本项目的衍生作品也必须以 GPL-3.0 开源。