e97c7548a7b24a5c69639e707ff77530b8b7dac9
PerToolBox Server - 后端服务
基于 FastAPI 的个人工具箱后端 API
📋 项目信息
- 项目名称:PerToolBox Server
- 项目类型:RESTful API 服务
- 版权所有:Sea Network Technology Studio
- 权利人:Canglan
- 开源协议:AGPL v3
- 联系方式:admin@sea-studio.top
✨ 功能模块
🔐 用户系统
- 手机验证码登录
- 邮箱验证码登录
📝 数据功能
- 待办事项管理
- 便签本
🧰 工具模块
- 密码生成器
- 二维码生成
- 加密工具箱(Hash / Base64 / URL / AES)
- JSON 校验与格式化
📊 统计模块
- 接口访问热度统计
🏗️ 系统架构
Client (Web / Mobile)
│
▼
Nginx
│
▼
FastAPI
┌───────┴────────┐
▼ ▼
MySQL Redis
(数据存储) (缓存/验证码)
🛠️ 技术栈
| 技术 | 版本 |
|---|---|
| Python | 3.12+ |
| FastAPI | 0.104+ |
| MySQL | 5.7+ |
| Redis | 7.x+ |
⚙️ 环境变量
复制并修改:
cp .env.example .env
示例:
- DATABASE_URL=mysql://user:password@host:port/db
- REDIS_URL=redis://host:port/0
- SECRET_KEY=your-secret-key
- CORS_ORIGINS=*
🚀 快速开始
1. 获取代码
git clone https://hz-gitea.sea-studio.top/Sea-Studio/PerToolBoxServer.git
cd PerToolBoxServer
2. 创建环境
python3.12 -m venv venv
source venv/bin/activate
3. 安装依赖
pip install -r requirements.txt
4. 初始化数据库
mysql -u root -p < scripts/init_db.sql
5. 启动服务
uvicorn backend.main:app --host 0.0.0.0 --port 9999 --reload
🌐 反向代理(Nginx)
location /api/ {
proxy_pass http://127.0.0.1:9999/api/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
📚 API 文档
启动后访问:
📁 项目结构
PerToolBoxServer/
├── backend/ # 核心代码
├── scripts/ # 数据库脚本
├── requirements.txt
└── .env.example
📞 联系方式
Languages
Python
100%