Industry-Level Multiplayer Quiz Platform
- Node.js 20+ LTS
- Docker & Docker Compose
- Git
# Clone the repository
git clone <repository-url>
cd QuizMaster-Pro
# Start the development environment
docker-compose up -d
# Install dependencies
cd backend && npm install
cd ../frontend && npm install
# Run database migrations
cd backend && npm run db:migrate
# Start development servers
npm run devQuizMaster-Pro/
├── backend/ # Node.js + Express + TypeScript API
├── frontend/ # Next.js 14 + TypeScript frontend
├── docker-compose.yml # Development environment
└── README.md # This file
Phase 1.3: ✅ Single-Player Quiz System - Simple & Fun!
What Players Can Do Right Now:
- 🎯 Play Quiz Alone: Choose categories or random mix
- 📊 View Performance: Track your quiz history and stats
- 🎮 Instant Play: From login to quiz in under 30 seconds
Coming Soon:
- ⚔️ 1 vs 1 Battles: Challenge other players
- 👥 Quiz Rooms: Multiplayer quiz parties
Run the automated setup script:
chmod +x setup.sh
./setup.shOr manually:
# 1. Start Docker services
docker-compose up -d
# 2. Setup backend
cd backend
npm install
npm run db:generate
npm run db:migrate
npm run dev
# 3. Setup frontend (new terminal)
cd frontend
npm install
npm run devOpen your browser:
- 🌐 Frontend: http://localhost:3000
- 🔧 Backend API: http://localhost:3001
- ❤️ Health Check: http://localhost:3001/health
# Backend
cd backend
npm run dev # Start development server
npm run build # Build for production
npm run test # Run tests
npm run db:migrate # Run database migrations
# Frontend
cd frontend
npm run dev # Start development server
npm run build # Build for production
npm run test # Run tests
npm run lint # Run linting
# Docker
docker-compose up -d # Start all services
docker-compose down # Stop all services
docker-compose logs # View logs- bcrypt password hashing (12+ rounds)
- JWT with refresh tokens
- Input validation and sanitization
- CORS configuration
- Security headers
- Rate limiting preparation