Files
brunoandClaude Sonnet 4.5 b2cc88aa6a 初始提交: 错题集应用核心功能实现
功能特性:
- ✅ 完整的后端API (FastAPI)
- ✅ 图片处理管线 (PaddleOCR + OpenCV)
- ✅ 手写去除功能
- ✅ Elasticsearch全文搜索
- ✅ MinIO对象存储集成
- ✅ Flutter跨平台前端架构
- ✅ Riverpod状态管理
- ✅ Docker容器化部署

技术栈:
- 后端: Python 3.9+, FastAPI, PostgreSQL, Elasticsearch, Redis
- 前端: Flutter 3.0+, Dart, Riverpod
- 图像处理: PaddleOCR, OpenCV
- 基础设施: Docker, MinIO

完成度:
- 后端核心功能: 85%
- 图片处理: 100%
- 前端数据层: 100%
- 前端UI: 20%

文档:
- 需求规格说明书
- 技术设计文档
- API接口文档
- 实施进度文档
- 快速启动脚本

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-09 19:53:45 +08:00

102 lines
2.5 KiB
Bash
Executable File

#!/bin/bash
# 错题集应用 - 开发环境启动脚本
echo "🚀 启动错题集应用开发环境..."
echo ""
# 检查Docker是否运行
if ! docker info > /dev/null 2>&1; then
echo "❌ Docker未运行,请先启动Docker"
exit 1
fi
# 启动Docker服务
echo "📦 启动Docker服务 (PostgreSQL, Elasticsearch, MinIO, Redis)..."
docker-compose up -d
# 等待服务就绪
echo "⏳ 等待服务启动..."
sleep 10
# 检查PostgreSQL
echo "🔍 检查PostgreSQL..."
until docker-compose exec -T postgres pg_isready > /dev/null 2>&1; do
echo " 等待PostgreSQL..."
sleep 2
done
echo "✅ PostgreSQL已就绪"
# 检查Elasticsearch
echo "🔍 检查Elasticsearch..."
until curl -s http://localhost:9200 > /dev/null 2>&1; do
echo " 等待Elasticsearch..."
sleep 2
done
echo "✅ Elasticsearch已就绪"
# 检查MinIO
echo "🔍 检查MinIO..."
until curl -s http://localhost:9000/minio/health/live > /dev/null 2>&1; do
echo " 等待MinIO..."
sleep 2
done
echo "✅ MinIO已就绪"
echo ""
echo "✅ 所有服务已启动!"
echo ""
echo "📝 服务地址:"
echo " - 后端API: http://localhost:8000"
echo " - API文档: http://localhost:8000/docs"
echo " - PostgreSQL: localhost:5432"
echo " - Elasticsearch: http://localhost:9200"
echo " - MinIO控制台: http://localhost:9001 (minioadmin/minioadmin)"
echo " - Redis: localhost:6379"
echo ""
# 询问是否启动后端
read -p "🤔 是否启动后端API服务? (y/n): " start_backend
if [ "$start_backend" = "y" ] || [ "$start_backend" = "Y" ]; then
echo ""
echo "🐍 启动后端API服务..."
echo " (使用 Ctrl+C 停止)"
echo ""
cd backend
# 检查虚拟环境
if [ ! -d "venv" ]; then
echo "📦 创建Python虚拟环境..."
python3 -m venv venv
fi
# 激活虚拟环境
source venv/bin/activate
# 安装依赖
echo "📦 安装Python依赖..."
pip install -q -r requirements.txt
# 启动服务
echo ""
echo "✅ 后端服务启动中..."
echo ""
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
else
echo ""
echo "💡 要启动后端服务,请运行:"
echo " cd backend"
echo " pip install -r requirements.txt"
echo " uvicorn app.main:app --reload"
echo ""
echo "💡 要启动前端应用,请运行:"
echo " cd frontend"
echo " flutter pub get"
echo " flutter pub run build_runner build --delete-conflicting-outputs"
echo " flutter run"
echo ""
echo "📖 查看完整文档: IMPLEMENTATION_STATUS.md"
fi