Skip to content

Latest commit

 

History

67 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

StudyBuddy Quiz - Advanced Learning Platform

A comprehensive React + FastAPI quiz system with AI-powered question generation, spaced repetition learning, and collaborative study features.

🚀 Features

Core Features

  • AI Question Generation: Generate multiple-choice questions from lecture notes using vLLM with Qwen/Qwen2.5-Coder-3B-Instruct-AWQ
  • Multiple Quiz Modes: Upload text files or generate questions from documents
  • Personalized Feedback: AI-powered explanations for incorrect answers
  • One-page Quiz Flow: Take entire quizzes on a single page with immediate scoring

New Advanced Features

  1. 📊 Quiz Dashboard with Analytics

    • Comprehensive performance metrics and quiz statistics
    • Real-time analytics with difficulty ratings and attempt tracking
    • Visual progress indicators and performance trends
  2. 📈 Study Progress Tracking

    • Weekly activity monitoring with detailed breakdowns
    • Subject-specific performance analytics
    • Study streak tracking and consistency metrics
    • Goal setting and achievement tracking
  3. ⏱️ Timed Quiz Mode

    • Configurable time limits (3-30 minutes)
    • Real-time countdown timer with visual indicators
    • Auto-submit when time expires
    • Time pressure performance analytics
  4. 👥 Collaborative Study Sessions

    • Create and join study rooms with unique codes
    • Real-time participant management
    • Synchronized quiz sessions with ready states
    • Host controls for session management
  5. 🧠 Smart Review System with Spaced Repetition

    • SM-2 algorithm implementation for optimal learning
    • Personalized review scheduling based on performance
    • Difficulty-based card management
    • Long-term retention optimization

🛠️ Tech Stack

Frontend

  • React 19 with TypeScript
  • Tailwind CSS for styling
  • Vite for fast development
  • shadcn/ui components
  • Lucide React icons
  • React Router for navigation

Backend

  • FastAPI with Python 3.11
  • SQLAlchemy ORM with SQLite
  • vLLM for AI question generation
  • Pydantic for data validation
  • CORS middleware for cross-origin requests

Database Schema

  • Quiz, Question, Choice - Core quiz structure
  • Attempt, AttemptAnswer - Quiz attempt tracking
  • StudySession, QuizAnalytics - Progress tracking
  • StudyRoom, StudyRoomParticipant - Collaborative features
  • ReviewCard, ReviewSession, ReviewResult - Spaced repetition

🚀 Getting Started

Prerequisites

  • Python 3.11+
  • Node.js 18+
  • CUDA-compatible GPU (for AI features)

Backend Setup

cd backend

# Create conda environment
conda env create -f environment.yaml
conda activate quiz-app

# Run the server
python main.py

The backend will be available at http://localhost:8000

Frontend Setup

cd frontend

# Install dependencies
npm install

# Start development server
npm run dev

The frontend will be available at http://localhost:5173

📱 Usage Guide

1. Dashboard

  • View comprehensive analytics and performance metrics
  • Monitor study streaks and consistency
  • Quick access to all features

2. Generate Quiz

  • Upload lecture notes or text files
  • Configure number of questions (1-20)
  • AI generates contextual multiple-choice questions
  • Get personalized feedback on incorrect answers

3. Upload Quiz

  • Upload pre-formatted quiz files
  • Support for text format with Q: and choice markers
  • Immediate quiz creation and taking

4. Timed Quiz Mode

  • Select any existing quiz
  • Choose time limit (3-30 minutes)
  • Real-time countdown with auto-submit
  • Performance tracking under time pressure

5. Study Rooms (Collaborative)

  • Create study rooms with custom names and descriptions
  • Share 6-character room codes with friends
  • Wait for all participants to be ready
  • Synchronized quiz sessions

6. Smart Review System

  • Add quizzes to your review deck
  • SM-2 spaced repetition algorithm
  • Review cards when due
  • Rate difficulty to optimize scheduling

7. Progress Tracking

  • Weekly activity charts
  • Subject-specific performance analytics
  • Study streak monitoring
  • Goal achievement tracking

🔧 API Endpoints

Core Quiz Operations

  • GET /api/quizzes - List all quizzes
  • POST /upload - Upload quiz file
  • POST /generate-questions - AI question generation
  • POST /generate-feedback - AI feedback generation

Analytics & Progress

  • GET /api/dashboard/{user_id} - Dashboard statistics
  • GET /api/progress/{user_id}/weekly - Weekly progress
  • GET /api/progress/{user_id}/subjects - Subject progress
  • GET /api/progress/{user_id}/streaks - Study streaks

Collaborative Features

  • POST /api/study-rooms/create - Create study room
  • POST /api/study-rooms/join - Join study room
  • GET /api/study-rooms/{room_id} - Get room details
  • POST /api/study-rooms/{room_id}/start - Start session

Smart Review System

  • POST /api/review/add-cards - Add quiz to review deck
  • GET /api/review/due-cards - Get cards due for review
  • POST /api/review/start-session - Start review session
  • POST /api/review/submit-result - Submit review result
  • GET /api/review/stats - Review statistics

🎯 Key Improvements Made

  1. Enhanced User Experience

    • Modern, responsive UI with Tailwind CSS
    • Intuitive navigation with clear visual feedback
    • Real-time updates and progress indicators
  2. Advanced Analytics

    • Comprehensive performance tracking
    • Visual charts and progress indicators
    • Personalized insights and recommendations
  3. Collaborative Learning

    • Real-time study sessions with friends
    • Synchronized quiz taking experience
    • Social learning features
  4. Scientific Learning Approach

    • SM-2 spaced repetition algorithm
    • Evidence-based review scheduling
    • Long-term retention optimization
  5. Scalable Architecture

    • Modular component design
    • RESTful API with proper data modeling
    • Extensible database schema

🚀 Future Enhancements

  • Real-time Chat: Add messaging to study rooms
  • Advanced Analytics: Machine learning insights
  • Mobile App: React Native implementation
  • Gamification: Points, badges, and leaderboards
  • Export Features: PDF reports and data export
  • Integration: LMS and calendar integrations

📄 License

This project is part of the VIP W-SB-Q-Stud group coursework.

Stashed changes

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages