A full-stack quiz application built with Next.js (frontend) and NestJS (backend) with Prisma ORM and PostgreSQL database.
- 📝 Create custom quizzes with multiple question types
- ✅ Support for Boolean, Input, and Checkbox questions
- 🎯 View and manage all quizzes
- 🗑️ Delete unwanted quizzes
- Frontend: Next.js 15, React 19, TypeScript, Tailwind CSS
- Backend: NestJS, TypeScript, Prisma ORM
- Database: PostgreSQL (Docker)
- Node.js (v18+)
- Docker and Docker Compose
-
Clone the repository
git clone <repository-url> cd quiz-builder
-
Start database
cd backend docker-compose up -d -
Setup backend
npm install npx prisma migrate deploy npx prisma generate npm run start:dev
-
Setup frontend (new terminal)
cd frontend npm install npm run dev -
Access the application
- Frontend: http://localhost:3001
- Backend API: http://localhost:3000
Create backend/.env file:
DATABASE_URL="postgresql://quizuser:quizpass@localhost:5432/quizdb"- Open http://localhost:3001
- Click "Create Quiz" to add a new quiz
- Add questions with different types (Boolean, Input, Checkbox)
- View all quizzes on the main page
- Click on any quiz to see details
# View data in browser
cd backend && npx prisma studio
# Reset database
cd backend && npx prisma migrate reset
# Stop database
cd backend && docker-compose downquiz-builder/
├── frontend/ # Next.js app
├── backend/ # NestJS API + Prisma
├── .gitignore # Shared git ignore
└── README.md # This file