first working version
This commit is contained in:
186
exam_system/QUICK_START.md
Normal file
186
exam_system/QUICK_START.md
Normal file
@@ -0,0 +1,186 @@
|
||||
# 🚀 Quick Start Guide
|
||||
|
||||
## ✅ System is Running!
|
||||
|
||||
Your exam system is fully operational with all the new features enabled.
|
||||
|
||||
## 🌐 Access Points
|
||||
|
||||
- **Frontend UI:** http://localhost (Port 80)
|
||||
- **Backend API:** http://localhost/api/
|
||||
- **Angular Dev Server:** Running on port 4200 (internal)
|
||||
- **Django Server:** Running on port 8000 (internal)
|
||||
|
||||
## 📝 Available Exams
|
||||
|
||||
1. **python-easy-v1** - 10 questions (original easy exam)
|
||||
2. **python-intermediate-v1** - 50 questions (intermediate level)
|
||||
3. **python-easy-15q-v1** ⭐ NEW - 15 questions with new features:
|
||||
- 6 × single_choice
|
||||
- 5 × true_false
|
||||
- 4 × multiple_choices (NEW TYPE!)
|
||||
- All questions have "I Don't Know" option
|
||||
|
||||
## 🎯 Test the New Features
|
||||
|
||||
### 1. Register/Login
|
||||
- Go to http://localhost
|
||||
- Create a new account or login
|
||||
- All previous user data has been cleared
|
||||
|
||||
### 2. Select the New Exam
|
||||
- Choose "Python Fundamentals - Easy Level (15 Questions)"
|
||||
- Click "Start Exam"
|
||||
|
||||
### 3. Test Multiple Choices Questions
|
||||
- Look for questions that say "Select all that apply"
|
||||
- You can select multiple checkboxes
|
||||
- Try selecting correct and wrong answers to see partial credit in action
|
||||
|
||||
### 4. Test "I Don't Know" Option
|
||||
- Every question has an "I Don't Know" option at the bottom
|
||||
- It's separated by a line and styled in italic gray text
|
||||
- For multiple_choices: Selecting IDK clears all other selections
|
||||
- For single_choice/true_false: Just another radio option
|
||||
|
||||
### 5. Submit and View Results
|
||||
- Submit the exam to see automatic scoring
|
||||
- Results page shows:
|
||||
- All options with color coding
|
||||
- Green = correct answer
|
||||
- Blue = your selection
|
||||
- Red = wrong selection
|
||||
- Yellow box if you selected "I Don't Know"
|
||||
- Partial credit scores for multiple_choices
|
||||
|
||||
## 🎨 Visual Features
|
||||
|
||||
### Multiple Choices UI
|
||||
```
|
||||
Select all that apply:
|
||||
☐ A. Option A
|
||||
☐ B. Option B
|
||||
☐ C. Option C
|
||||
─────────────────
|
||||
☐ ? I don't know
|
||||
```
|
||||
|
||||
### "I Don't Know" Option
|
||||
- Gray italic text
|
||||
- Separated by a border line
|
||||
- Question mark icon (?)
|
||||
|
||||
### Result Display
|
||||
- **Correct answer:** Green border, light green background
|
||||
- **Your correct selection:** Thicker green border, badge "✓ Your Selection (Correct!)"
|
||||
- **Your wrong selection:** Red border, red background, badge "✗ Wrong Selection"
|
||||
- **IDK selected:** Yellow background notice box
|
||||
|
||||
## 📊 Scoring
|
||||
|
||||
### Single Choice / True-False
|
||||
- Correct answer: Full points
|
||||
- Wrong answer: 0 points
|
||||
- "I don't know": 0 points (no penalty)
|
||||
|
||||
### Multiple Choices (Partial Credit)
|
||||
- Formula: `(correct_selected - wrong_selected) / total_correct × points`
|
||||
- Example (3 correct answers, 10 points):
|
||||
- Select all 3 correct: 10 points
|
||||
- Select 2 correct, 0 wrong: 6.67 points
|
||||
- Select 2 correct, 1 wrong: 3.33 points
|
||||
- Select "I don't know": 0 points
|
||||
- Minimum score is 0 (never negative)
|
||||
|
||||
## 🔧 Docker Management
|
||||
|
||||
### Check Status
|
||||
```bash
|
||||
cd /Volumes/data/tutor_system/exam_system
|
||||
docker-compose ps
|
||||
```
|
||||
|
||||
### View Logs
|
||||
```bash
|
||||
docker-compose logs exam_web # Frontend logs
|
||||
docker-compose logs exam_server # Backend logs
|
||||
docker-compose logs nginx # Nginx logs
|
||||
```
|
||||
|
||||
### Restart Services
|
||||
```bash
|
||||
docker-compose restart # Restart all
|
||||
docker-compose restart exam_web # Restart frontend only
|
||||
```
|
||||
|
||||
### Stop/Start
|
||||
```bash
|
||||
docker-compose down # Stop all containers
|
||||
docker-compose up -d # Start all containers
|
||||
docker-compose up --build -d # Rebuild and start
|
||||
```
|
||||
|
||||
## 📂 File Locations
|
||||
|
||||
### Exam Definitions
|
||||
```
|
||||
/Volumes/data/tutor_system/exam_system/data/input/python/2025-10/
|
||||
├── python-easy-v1.json
|
||||
├── python-intermediate-v1.json
|
||||
└── python-easy-15q-v1.json ⭐ NEW
|
||||
```
|
||||
|
||||
### Manifest
|
||||
```
|
||||
/Volumes/data/tutor_system/exam_system/data/manifest.json
|
||||
```
|
||||
|
||||
### Documentation
|
||||
```
|
||||
/Volumes/data/tutor_system/docs/exam-format.md
|
||||
/Volumes/data/tutor_system/docs/multiple-choices-and-idk.md
|
||||
/Volumes/data/tutor_system/exam_system/MULTIPLE_CHOICES_AND_IDK_IMPLEMENTATION.md
|
||||
```
|
||||
|
||||
## 🐛 Troubleshooting
|
||||
|
||||
### "Cannot GET /" Error
|
||||
- **Fixed!** - This was due to TypeScript compilation errors
|
||||
- Angular app is now compiled successfully
|
||||
|
||||
### Angular Not Compiling
|
||||
```bash
|
||||
docker-compose logs exam_web
|
||||
# Look for "✔ Compiled successfully"
|
||||
```
|
||||
|
||||
### API Not Responding
|
||||
```bash
|
||||
docker-compose logs exam_server
|
||||
# Check for gunicorn startup messages
|
||||
```
|
||||
|
||||
### Port Already in Use
|
||||
```bash
|
||||
# If port 80 is already in use:
|
||||
# 1. Stop the conflicting service
|
||||
# 2. Or modify docker-compose.yml to use different ports
|
||||
```
|
||||
|
||||
## 🎓 Next Steps
|
||||
|
||||
1. **Test the new exam** with all question types
|
||||
2. **Try the IDK option** on different question types
|
||||
3. **Submit and check results** to see partial credit scoring
|
||||
4. **Retake the exam** to test the reset functionality
|
||||
5. **View exam history** to see all your attempts
|
||||
|
||||
## 📚 Additional Documentation
|
||||
|
||||
- See `MULTIPLE_CHOICES_AND_IDK_IMPLEMENTATION.md` for implementation details
|
||||
- See `NEW_EXAM_CREATED.md` for new exam specifications
|
||||
- See `FINAL_GUIDE.md` for overall system guide
|
||||
|
||||
---
|
||||
|
||||
**All systems ready! Have fun testing! 🎉**
|
||||
Reference in New Issue
Block a user