docs(readme): 编写项目README文档,描述功能与架构

- 完整撰写玉宗珠宝设计大师项目README,介绍项目概况及核心功能
- 说明用户认证系统实现及优势,包含JWT鉴权和密码加密细节
- 详细描述品类管理系统,支持多流程类型和多种玉石品类
- 说明设计图生成方案及技术,包含Pillow生成示例及字体支持
- 介绍设计管理功能,支持分页浏览、预览、下载和删除设计
- 个人信息管理模块说明,涵盖昵称、手机号、密码的安全修改
- 绘制业务流程图和关键数据流图,清晰展现系统架构与数据流
- 提供详细API调用链路及参数说明,涵盖用户、品类、设计接口
- 列明技术栈及版本,包含前后端框架、ORM、认证、加密等工具
- 展示目录结构,标明后端与前端项目布局
- 规划本地开发环境与启动步骤,包括数据库初始化及运行命令
- 说明服务器部署流程和Nginx配置方案
- 详细数据库表结构说明及环境变量配置指导
- 汇总常用开发及测试命令,方便开发调试与部署管理
This commit is contained in:
changyoutongxue
2026-03-27 13:10:17 +08:00
commit e3ff55b4db
69 changed files with 8551 additions and 0 deletions

67
backend/app/main.py Normal file
View File

@@ -0,0 +1,67 @@
"""
玉宗 - 珠宝设计大师 后端服务入口
"""
import os
from contextlib import asynccontextmanager
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from fastapi.staticfiles import StaticFiles
from .config import settings
from .routers import categories, designs, users
from .routers import auth
@asynccontextmanager
async def lifespan(app: FastAPI):
"""应用生命周期管理"""
# 启动时:创建 uploads 目录
os.makedirs(settings.UPLOAD_DIR, exist_ok=True)
print(f"✅ 上传目录已准备: {settings.UPLOAD_DIR}")
yield
# 关闭时:清理资源(如需要)
print("👋 应用已关闭")
# 创建 FastAPI 应用实例
app = FastAPI(
title="玉宗 - 珠宝设计大师",
description="AI驱动的珠宝设计微信小程序后端服务",
version="1.0.0",
lifespan=lifespan
)
# 配置 CORS
app.add_middleware(
CORSMiddleware,
allow_origins=["http://localhost:3000"], # 生产环境应限制具体域名
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/")
async def root():
"""根路径健康检查"""
return {
"message": "玉宗 - 珠宝设计大师 API",
"version": "1.0.0",
"status": "running"
}
@app.get("/health")
async def health_check():
"""健康检查接口"""
return {"status": "healthy"}
# 注册路由
app.include_router(auth.router)
app.include_router(categories.router)
app.include_router(designs.router)
app.include_router(users.router)
# 配置静态文件服务
app.mount("/uploads", StaticFiles(directory="uploads"), name="uploads")