Files
kami_apple_exchage/GEMINI_CN.md
danial 5c486e34d3 docs(项目): 添加项目文档并进行代码调整
- 新增 CODEBUDDY.md、GEMINI.md、GEMINI_CN.md 等项目文档
- 更新 Dockerfile 和其他配置文件
- 优化部分代码结构,如 orders.py、tasks.py 等
- 新增 .dockerignore 文件
2025-09-12 19:38:24 +08:00

2.4 KiB

Gemini 项目背景:苹果礼品卡兑换平台

项目概述

这是一个用于苹果礼品卡兑換平台的全栈应用程序。它采用现代、可扩展的架构,具有实时监控仪表板和苹果风格的用户界面。

  • 前端: 一个使用 TypeScript 编写的 Next.js 应用程序,使用 Tailwind CSS 进行样式设计,并使用 Radix UI 作为组件。它通过 REST API 与后端通信。
  • 后端: 一个基于 Python 的微服务架构,使用 FastAPI。它利用 Celery 进行异步任务处理,使用 Playwright 进行浏览器自动化,并使用 PostgreSQL 作为数据库。
  • 架构: 该系统设计为一个分布式系统,包括一个前端、一个后端 API 和一个 Celery 工作者池。它使用 Redis 进行缓存和作为消息代理。

构建和运行

先决条件

  • Python 3.13+
  • Node.js 18+
  • Docker 和 Docker Compose
  • PostgreSQL
  • Redis

开发模式

  1. 启动依赖项:

    cd backend
    docker-compose up -d redis postgres
    
  2. 启动后端:

    cd backend
    uv sync
    uv run python app/main.py
    
  3. 启动前端:

    cd frontend
    bun install
    bun run dev
    
  4. 启动工作者:

    cd backend
    uv run celery -A app.core.celery_app worker --loglevel=info
    uv run celery -A app.core.celery_app beat --loglevel=info
    

Docker 开发

cd backend
docker-compose up -d
  • 前端: http://localhost:3000
  • 后端 API: http://localhost:8000
  • API 文档: http://localhost:8000/docs

开发规范

代码质量

  • 后端:
    • 格式化: Black
    • 导入排序: isort
    • 类型检查: MyPy
    • 代码检查: Ruff
    • 测试: pytest
  • 前端:
    • 格式化: Prettier
    • 代码检查: ESLint
    • 类型检查: TypeScript
    • 测试: Jest + React Testing Library

Git 工作流程

  • master 创建功能分支。
  • 使用常规提交消息 (例如, feat:, fix:, docs:)。
  • 提交拉取请求以进行代码审查。

关键文件

  • frontend/: 包含 Next.js 前端应用程序。
  • backend/: 包含 FastAPI 后端应用程序。
  • deploy/: 包含部署脚本和配置。
  • README.md: 包含详细项目信息的主 README 文件。