Skip to content

CodecoolGlobal/freestyle-mern-project-react-kveszti

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

125 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Quiz Quest

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.

Created by

Static Badge Static Badge

Table Of Contents

Used technologies

Static Badge Static Badge Static Badge Static Badge Static Badge Static Badge

Features

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

Installation

  1. 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
  2. Clone the repo.

  3. 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.

  4. From the root folder: cd client

  5. In the terminal: npm run dev

  6. From the root folder: cd server

  7. In the terminal: npm run dev

Sneak peek

Képernyőfotó 2024-08-21 - 19 33 21

Képernyőfotó 2024-08-21 - 19 34 21

Képernyőfotó 2024-08-21 - 19 34 59

Képernyőfotó 2024-08-21 - 19 35 50

Képernyőfotó 2024-08-21 - 19 36 13

Képernyőfotó 2024-08-21 - 19 35 32

Képernyőfotó 2024-08-21 - 19 37 47

Képernyőfotó 2024-08-21 - 19 35 15

Képernyőfotó 2024-08-21 - 19 36 26

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors