# 校园趣味小程序 **Repository Path**: suyu1314/2026-5-2-Campus-Fun-Mini-Program ## Basic Information - **Project Name**: 校园趣味小程序 - **Description**: 2026-5-2-直播项目基于uniapp小程序+vue管理员端+fastapi后端框架搭建的校园趣味小程序 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-02 - **Last Updated**: 2026-05-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 校园趣味小程序 这是一个前后端分离的校园小程序项目工程,当前包含 FastAPI 后端、Vue 3 管理员端、uni-app 用户端和 MySQL 初始化脚本。仓库重点按模块分层组织代码,便于继续扩展接口、页面和小程序端能力。 ## 目录结构 ```text . ├── admin/ # 管理员端,Vue 3 + Vite + Element Plus ├── backend/ # 后端服务,FastAPI + SQLAlchemy ├── docs/ # 需求文档、接口清单等项目文档 ├── sql/ # MySQL 初始化脚本 ├── uniapp-user/ # 用户端 uni-app 小程序 ├── AGENTS.md # 项目进度和开发约定 └── README.md # 开发环境和技术栈说明 ``` ## 技术栈 后端: - Python - FastAPI - Uvicorn - SQLAlchemy 2.x - PyMySQL - Pydantic Settings - Passlib + bcrypt - python-jose - MySQL 管理员端: - Vue 3 - Vite - Element Plus - @element-plus/icons-vue - 原生 Fetch 请求封装 - localStorage 登录态存储 用户端: - uni-app - Vue 单文件组件 - uni.request 请求封装 - 本地存储登录态 - 微信小程序开发者工具 ## 环境要求 建议环境: - Python 3.10+ - Node.js 18+ - npm 9+ - MySQL 8.x - 微信开发者工具 Windows PowerShell 示例命令均以项目根目录为起点。 ## 数据库初始化 1. 启动本地 MySQL。 2. 使用 `sql/init.sql` 初始化数据库: ```powershell mysql -u root -p < sql/init.sql ``` 默认数据库名: ```text campus_fun_app ``` 初始化脚本会创建用户、分类、帖子、评论、失物招领、二手交易、租车、跑腿、审核等基础表。 ## 后端开发环境 进入后端目录: ```powershell cd backend ``` 创建虚拟环境: ```powershell python -m venv .venv ``` 激活虚拟环境: ```powershell .\.venv\Scripts\Activate.ps1 ``` 安装依赖: ```powershell pip install -r requirements.txt ``` 复制环境变量文件: ```powershell Copy-Item .env.example .env ``` 按本机 MySQL 配置修改 `backend/.env`: ```env CAMPUS_DATABASE_URL=mysql+pymysql://root:password@127.0.0.1:3306/campus_fun_app?charset=utf8mb4 CAMPUS_JWT_SECRET_KEY=please-change-this-secret CAMPUS_CORS_ORIGINS=http://127.0.0.1:5173,http://localhost:5173 ``` 启动后端服务: ```powershell uvicorn app.main:app --host 127.0.0.1 --port 8001 --reload ``` 后端默认地址: ```text http://127.0.0.1:8001 ``` 接口文档地址: ```text http://127.0.0.1:8001/docs ``` ## 管理员端开发环境 进入管理员端目录: ```powershell cd admin ``` 安装依赖: ```powershell npm install ``` 确认后端地址配置: ```text admin/src/config/index.js ``` 默认配置: ```js export const config = { baseUrl: 'http://127.0.0.1:8001' } ``` 启动开发服务: ```powershell npm run dev ``` 管理员端默认地址: ```text http://127.0.0.1:5173 ``` 构建生产包: ```powershell npm run build ``` 本地预览构建产物: ```powershell npm run preview ``` ## 用户端 uni-app 环境 用户端目录: ```text uniapp-user/ ``` 后端地址配置文件: ```text uniapp-user/config/index.js ``` 默认配置: ```js const config = { baseUrl: 'http://127.0.0.1:8001' } ``` 开发方式: 1. 使用 HBuilderX 或微信开发者工具打开 `uniapp-user/`。 2. 确认后端服务已启动在 `http://127.0.0.1:8001`。 3. 微信开发者工具本地联调时,在本地设置中勾选“不校验合法域名、web-view、TLS 版本以及 HTTPS 证书”。 ## 配置说明 后端配置来自 `backend/.env`,字段前缀为 `CAMPUS_`。 | 配置项 | 说明 | | --- | --- | | `CAMPUS_APP_NAME` | FastAPI 应用名称 | | `CAMPUS_DEBUG` | 是否开启调试模式 | | `CAMPUS_DATABASE_URL` | SQLAlchemy 数据库连接地址 | | `CAMPUS_JWT_SECRET_KEY` | JWT 签名密钥 | | `CAMPUS_JWT_ALGORITHM` | JWT 签名算法 | | `CAMPUS_ACCESS_TOKEN_EXPIRE_MINUTES` | 登录令牌有效期,单位分钟 | | `CAMPUS_CORS_ORIGINS` | 允许跨域访问的前端地址,多个地址用逗号分隔 | 前端配置: | 文件 | 说明 | | --- | --- | | `admin/src/config/index.js` | 管理员端后端 API 地址 | | `uniapp-user/config/index.js` | 用户端后端 API 地址 | ## 常用命令 后端编译检查: ```powershell cd backend .\.venv\Scripts\python.exe -m compileall app ``` 管理员端构建检查: ```powershell cd admin npm run build ``` 查看 Git 状态: ```powershell git status --short ``` ## 开发约定 - 查看和编辑中文文件时统一使用 UTF-8。 - 后端代码放在 `backend/`。 - 管理员端代码放在 `admin/`。 - 用户端代码放在 `uniapp-user/`。 - 后端按 `api / schemas / services / models / core` 分层组织。 - 前端接口封装放在 `admin/src/api/` 或 `uniapp-user/api/`。 - 本地真实 `.env` 文件不提交 Git。