An AI-driven quiz application where users can take quizzes on specific topics, generate questions dynamically using AI, and receive real-time feedback on their performance.
🚨 Warning: This project is still in progress! Some features may not be fully implemented yet. 🚨
- 🔐 User Authentication (Login/Signup via email & social logins)
- 📚 Topic Selection (Users choose a quiz topic of interest)
- 🤖 AI-Powered Questions (Dynamic question generation using AI models)
- ✅ Multiple-Choice Format (Each question has 4 options, with one correct answer)
- 📊 Instant Feedback (Correct answers are processed and stored)
- 📝 Result Storage (Users can track their past quizzes and scores)
- 📈 Scalability (Cloud-based backend with efficient data storage)
- React.js / Next.js
- Tailwind CSS / Daisy UI
- Node.js with Express
- PostgreSQL
- Gemini API
- JWT Authentication
-
Clone the repository: https://github.com/jyotishankar04/Quizzify
git clone cd Quizzify
-
Install dependencies:
npm install
-
Set up environment variables: Create a
.env
file and add the necessary API keys and database credentials.DATABASE_URL=your_database_url JWT_SECRET=your_jwt_secret GEMINI_API_KEY=your_gemini_api_key
-
Run the backend server:
npm run dev
-
Run the frontend:
cd client npm install npm run dev
- Prompt: The AI model generates questions based on the selected topic.
- Response Parsing: AI returns structured JSON containing questions, multiple options, and the correct answer.
- Result Evaluation: The backend processes user responses and calculates scores.
- 🔑 JWT-based authentication for user sessions
- 🛠 Input validation using Zod
We welcome contributions! Feel free to fork this repo and submit a pull request.
- Fork the repository
- Create a new branch (
feature/new-feature
) - Commit changes (
git commit -m 'Add new feature'
) - Push to your branch (
git push origin feature/new-feature
) - Open a Pull Request
This project is licensed under the MIT License. Feel free to use and modify it as needed.
For any queries or collaboration, reach out via [email protected].
⭐ If you like this project, consider giving it a star! ⭐