mirror of
https://github.com/handsomezhuzhu/QQuiz.git
synced 2026-02-20 20:10:14 +00:00
🔧 Fix encoding issues - Add English version scripts
Fix: - Remove Chinese characters causing encoding errors - Create pure English version scripts New files: - setup.bat: Simple configuration script (English) - start_app.bat: Auto-deploy script (English) - README_QUICKSTART.md: Quick start guide 🚀 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
94
README_QUICKSTART.md
Normal file
94
README_QUICKSTART.md
Normal file
@@ -0,0 +1,94 @@
|
|||||||
|
# QQuiz Quick Start Guide
|
||||||
|
|
||||||
|
## Step 1: Configure (30 seconds)
|
||||||
|
|
||||||
|
Double-click to run:
|
||||||
|
```
|
||||||
|
setup.bat
|
||||||
|
```
|
||||||
|
|
||||||
|
This will:
|
||||||
|
- Create `.env` file
|
||||||
|
- Open it in Notepad
|
||||||
|
- You need to replace `sk-your-openai-api-key-here` with your real OpenAI API key
|
||||||
|
|
||||||
|
**Where to get API key:**
|
||||||
|
- Visit: https://platform.openai.com/api-keys
|
||||||
|
- Create new secret key
|
||||||
|
- Copy and paste into `.env` file
|
||||||
|
|
||||||
|
## Step 2: Start Application (3-5 minutes)
|
||||||
|
|
||||||
|
Double-click to run:
|
||||||
|
```
|
||||||
|
start_app.bat
|
||||||
|
```
|
||||||
|
|
||||||
|
**PostgreSQL Password:**
|
||||||
|
- When prompted, enter your PostgreSQL password
|
||||||
|
- Default is usually: `postgres`
|
||||||
|
- Or just press Enter to try without password
|
||||||
|
|
||||||
|
The script will automatically:
|
||||||
|
- ✓ Check Python and Node.js
|
||||||
|
- ✓ Create database
|
||||||
|
- ✓ Install all dependencies
|
||||||
|
- ✓ Start backend (new window)
|
||||||
|
- ✓ Start frontend (new window)
|
||||||
|
|
||||||
|
## Step 3: Access System
|
||||||
|
|
||||||
|
Browser will open automatically: http://localhost:3000
|
||||||
|
|
||||||
|
**Login:**
|
||||||
|
- Username: `admin`
|
||||||
|
- Password: `admin123`
|
||||||
|
|
||||||
|
**Test the system:**
|
||||||
|
1. Click "题库管理" (Exam Management)
|
||||||
|
2. Click "创建题库" (Create Exam)
|
||||||
|
3. Enter name: `Test Exam`
|
||||||
|
4. Upload file: `test_data/sample_questions.txt`
|
||||||
|
5. Wait 10-30 seconds for AI to process
|
||||||
|
6. Click "开始刷题" (Start Quiz)
|
||||||
|
|
||||||
|
## What You'll See
|
||||||
|
|
||||||
|
✅ Beautiful login page
|
||||||
|
✅ Dashboard with statistics
|
||||||
|
✅ Create exam and upload documents
|
||||||
|
✅ AI processes questions automatically
|
||||||
|
✅ Quiz player with different question types
|
||||||
|
✅ Automatic mistake collection
|
||||||
|
✅ Progress tracking
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
### Can't find PostgreSQL password
|
||||||
|
- Try: `postgres` or leave empty
|
||||||
|
- Or check PostgreSQL installation
|
||||||
|
|
||||||
|
### Port already in use
|
||||||
|
```cmd
|
||||||
|
netstat -ano | findstr :3000
|
||||||
|
taskkill /F /PID <PID>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Dependencies install failed
|
||||||
|
- Check internet connection
|
||||||
|
- Script uses China mirrors for speed
|
||||||
|
|
||||||
|
## Success!
|
||||||
|
|
||||||
|
If you see the login page at http://localhost:3000 - congratulations! 🎉
|
||||||
|
|
||||||
|
The system is now running. You can:
|
||||||
|
- Create exam banks
|
||||||
|
- Upload documents (TXT/PDF/DOCX/XLSX)
|
||||||
|
- Start quizzing
|
||||||
|
- Review mistakes
|
||||||
|
- Track progress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Enjoy using QQuiz! 🚀
|
||||||
34
setup.bat
Normal file
34
setup.bat
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
@echo off
|
||||||
|
cd /d "%~dp0"
|
||||||
|
|
||||||
|
echo Creating .env configuration file...
|
||||||
|
echo.
|
||||||
|
|
||||||
|
(
|
||||||
|
echo DATABASE_URL=postgresql+asyncpg://qquiz:qquiz_password@localhost:5432/qquiz_db
|
||||||
|
echo SECRET_KEY=qquiz-secret-key-for-development-change-in-production-32chars
|
||||||
|
echo AI_PROVIDER=openai
|
||||||
|
echo OPENAI_API_KEY=sk-your-openai-api-key-here
|
||||||
|
echo OPENAI_BASE_URL=https://api.openai.com/v1
|
||||||
|
echo OPENAI_MODEL=gpt-4o-mini
|
||||||
|
echo ALLOW_REGISTRATION=true
|
||||||
|
echo MAX_UPLOAD_SIZE_MB=10
|
||||||
|
echo MAX_DAILY_UPLOADS=20
|
||||||
|
echo CORS_ORIGINS=http://localhost:3000,http://127.0.0.1:3000
|
||||||
|
echo UPLOAD_DIR=./uploads
|
||||||
|
) > .env
|
||||||
|
|
||||||
|
echo Done! .env file created.
|
||||||
|
echo.
|
||||||
|
echo IMPORTANT: Please edit OPENAI_API_KEY in .env file
|
||||||
|
echo.
|
||||||
|
echo Opening .env file now...
|
||||||
|
timeout /t 2 /nobreak >nul
|
||||||
|
|
||||||
|
notepad .env
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo Configuration complete!
|
||||||
|
echo Now you can run: start_app.bat
|
||||||
|
echo.
|
||||||
|
pause
|
||||||
121
start_app.bat
Normal file
121
start_app.bat
Normal file
@@ -0,0 +1,121 @@
|
|||||||
|
@echo off
|
||||||
|
title QQuiz - Starting Application
|
||||||
|
color 0A
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo ========================================
|
||||||
|
echo QQuiz - Auto Deploy Script
|
||||||
|
echo ========================================
|
||||||
|
echo.
|
||||||
|
|
||||||
|
cd /d "%~dp0"
|
||||||
|
|
||||||
|
REM Check if .env exists
|
||||||
|
if not exist ".env" (
|
||||||
|
echo ERROR: .env file not found!
|
||||||
|
echo Please run setup.bat first
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
echo [1/7] Checking Python...
|
||||||
|
python --version >nul 2>&1
|
||||||
|
if %errorlevel% neq 0 (
|
||||||
|
echo ERROR: Python not found!
|
||||||
|
echo Please install Python 3.11+ from https://www.python.org/
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
echo OK - Python installed
|
||||||
|
echo.
|
||||||
|
|
||||||
|
echo [2/7] Checking Node.js...
|
||||||
|
node --version >nul 2>&1
|
||||||
|
if %errorlevel% neq 0 (
|
||||||
|
echo ERROR: Node.js not found!
|
||||||
|
echo Please install Node.js 18+ from https://nodejs.org/
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
echo OK - Node.js installed
|
||||||
|
echo.
|
||||||
|
|
||||||
|
echo [3/7] Creating PostgreSQL database...
|
||||||
|
echo.
|
||||||
|
echo Please enter PostgreSQL admin password when prompted
|
||||||
|
echo (Default password is usually: postgres)
|
||||||
|
echo.
|
||||||
|
|
||||||
|
set PGPASSWORD=postgres
|
||||||
|
psql -U postgres -h localhost -c "DROP DATABASE IF EXISTS qquiz_db;" 2>nul
|
||||||
|
psql -U postgres -h localhost -c "DROP USER IF EXISTS qquiz;" 2>nul
|
||||||
|
psql -U postgres -h localhost -c "CREATE USER qquiz WITH PASSWORD 'qquiz_password';" 2>nul
|
||||||
|
psql -U postgres -h localhost -c "CREATE DATABASE qquiz_db OWNER qquiz;" 2>nul
|
||||||
|
|
||||||
|
echo Database setup complete
|
||||||
|
echo.
|
||||||
|
|
||||||
|
echo [4/7] Installing backend dependencies...
|
||||||
|
cd backend
|
||||||
|
|
||||||
|
if not exist "venv" (
|
||||||
|
python -m venv venv
|
||||||
|
)
|
||||||
|
|
||||||
|
call venv\Scripts\activate.bat
|
||||||
|
pip install -q -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
|
||||||
|
|
||||||
|
echo Backend dependencies installed
|
||||||
|
echo.
|
||||||
|
|
||||||
|
echo [5/7] Running database migrations...
|
||||||
|
alembic upgrade head 2>nul
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
echo.
|
||||||
|
|
||||||
|
echo [6/7] Installing frontend dependencies...
|
||||||
|
cd frontend
|
||||||
|
|
||||||
|
if not exist "node_modules" (
|
||||||
|
call npm config set registry https://registry.npmmirror.com
|
||||||
|
call npm install --silent
|
||||||
|
)
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
echo.
|
||||||
|
|
||||||
|
echo [7/7] Starting services...
|
||||||
|
echo.
|
||||||
|
|
||||||
|
start "QQuiz Backend" cmd /k "cd /d %~dp0backend && call venv\Scripts\activate.bat && echo Backend API: http://localhost:8000 && echo API Docs: http://localhost:8000/docs && echo. && uvicorn main:app --reload"
|
||||||
|
|
||||||
|
timeout /t 5 /nobreak >nul
|
||||||
|
|
||||||
|
start "QQuiz Frontend" cmd /k "cd /d %~dp0frontend && echo Frontend: http://localhost:3000 && echo. && npm start"
|
||||||
|
|
||||||
|
timeout /t 3 /nobreak >nul
|
||||||
|
|
||||||
|
echo.
|
||||||
|
echo ========================================
|
||||||
|
echo SUCCESS! QQuiz is starting...
|
||||||
|
echo ========================================
|
||||||
|
echo.
|
||||||
|
echo Frontend: http://localhost:3000
|
||||||
|
echo Backend: http://localhost:8000
|
||||||
|
echo API Docs: http://localhost:8000/docs
|
||||||
|
echo.
|
||||||
|
echo Default login:
|
||||||
|
echo Username: admin
|
||||||
|
echo Password: admin123
|
||||||
|
echo.
|
||||||
|
echo ========================================
|
||||||
|
echo.
|
||||||
|
|
||||||
|
timeout /t 5 /nobreak >nul
|
||||||
|
start http://localhost:3000
|
||||||
|
|
||||||
|
echo System is running...
|
||||||
|
echo Close backend and frontend windows to stop
|
||||||
|
echo.
|
||||||
|
pause
|
||||||
Reference in New Issue
Block a user