Quiz Quest is a quiz game webapp with 4 game modes (Sprint, 50:50, Zen, All in), each of them gives a unique gameplay experience. The app uses the Open Trivia Database API for fetching the trivia questions. This project was created as a part of Codecool's Fullstack Developer course.
Short descriptions of the game modes:
Sprint - There are 10 questions, you only have 10 seconds to answer each of them, and you get XP based on your tempo.
Zen - There are 15 questions and they aren't timed, you can take all the time you need to answer.
50:50 - There are 10 true or false questions, you have 10 seconds to answer each.
All in - There are 10 questions and they are timed for 10 seconds, but the stakes are higher - good answer count double, while wrong answers count as minus XP.
The UI color theme is customizable with 8 color options. The XP system was created to give awards later on in the form of titles, this is still under development. There is a statistics page with the users game info, and a leaderboard between all the registered users.
Done features:
- 4 game modes
- UI color themes
- Statistics page
- Leaderboard
- Game history with overview menu and detailed view to inspect all questions and answers
- Good answer streaks
- Profile settings
- Jwt + cookie authentication
Planned features:
- Expanding XP system with titles and achievements
-
Prerequisites and packages to install:
- npm ^10.7.0
- node.js ^22.2.0
- vite ^5.1.
- dotenv ^16.4.2
- express.js ^4.18.2
- mongoose ^8.1.2
- react ^18.2.0
- react-dom ^18.2.0
- react-router-dom ^6.25.1
- nodemon ^3.0.3
- cookie-parser ^1.4.6
- bcrypt ^5.1.1
-
Clone the repo.
-
Setup a .env file where you create a CONSTRING variable for your own mongoDB cluster you'd like to use for development, a JWT_SECRET for token creation and NODE_ENV variable which should be set to "development" if you don't want the authentication to work https-only.
-
From the root folder:
cd client -
In the terminal:
npm run dev -
From the root folder:
cd server -
In the terminal:
npm run dev








