LearnQuest is an interactive quiz platform designed to help users test and improve their knowledge across various topics. The application provides AI-driven quiz suggestions based on user performance, a leaderboard, achievements, and a seamless authentication experience. It leverages Firebase for authentication and user data, and the Open Trivia Database (OpenTDB) API for dynamic quiz content.
Frontend
- Frontend: Live Demo
- Backend: N/A (uses Firebase and external APIs)
- Database: Firebase Firestore
LearnQuest/
├─ CSS/
│ ├─ login.css
│ ├─ main.css
│ ├─ nav.css
│ └─ signup.css
├─ HTML/
│ ├─ achivement.html
│ ├─ leaderboard.html
│ ├─ login.html
│ ├─ quiz.html
│ ├─ signup.html
│ └─ startquiz.html
├─ IMG/
│ ├─ login_signup_background.png
│ ├─ logo.png
│ ├─ main_keyboard_background.png
│ └─ quiz_background.png
├─ JavaScript/
│ ├─ auth.js
│ ├─ dash2.js
│ ├─ dashboard.js
│ └─ firbase-config.js
├─ index.html
└─ README.md
- User authentication (login/signup) with Firebase
- AI-driven quiz suggestions based on user performance
- Dynamic quizzes from OpenTDB API
- Leaderboard and achievements tracking
- Responsive, modern UI
- Personalized dashboard and progress tracking
- User quiz history and progress are stored in Firebase Firestore.
- Quiz content is fetched live from the OpenTDB API, ensuring up-to-date and varied questions.
- The app is designed as a static frontend, with no custom backend server.
- All user data is secured via Firebase authentication and Firestore security rules.
-
Clone the repository:
git clone <your-repo-url> cd LearnQuest
-
Firebase Setup:
- Add your Firebase project configuration to
JavaScript/firbase-config.js. - Ensure Firestore and Authentication are enabled in your Firebase console.
- Add your Firebase project configuration to
-
Run Locally:
- Open
index.htmlin your browser. - For best results, use a local server (e.g., VSCode Live Server extension).
- Open
-
(Optional) Deploy:
- Deploy to Firebase Hosting or any static site host.
- Sign up or log in to access personalized features.
- Navigate to "AI Review" for quiz suggestions.
- Take quizzes, view your progress, and climb the leaderboard!
Include screenshots as necessary.
- Demo user:
Email: demo@learnquest.com
Password: Demo1234
- Open Trivia Database (OpenTDB) — for quiz questions and categories.
- Firebase Authentication & Firestore — for user management and data storage.
No custom backend. All quiz data is fetched from:
https://opentdb.com/api.php?amount={amount}&category={category}&difficulty={difficulty}&type=multiplehttps://opentdb.com/api_category.php(for categories)
- HTML5, CSS3, JavaScript
- Firebase (Authentication, Firestore)
- OpenTDB API