/Pub-Quiz-App

An app that allows you to play a live quiz with your friends

Primary LanguageJavaScript

QuizLife! 🎮 🍺

How To Use | Technologies | Team

QuizLife is an app that allows you to create quizzes and play them live with your friends in a pub or at a party.
This is a collaborative final project done at Makers Academy. :tada:.


It is a full Javascript application that particularly focuses on React, as the front-end. This web app has been built mainly to be used on mobile phones.

If you want to try our app, here it is live
here 💻.

To create a Quiz click on the 'Create a quiz' button, fill in the form and add the quiz.
Once you are ready to play click on the quiz, share the game's link with your friends. Once you have decided the team names and the interval time for the questions, the leader have to press start and then all the other users will be able to join!

Enjoy! 🎉


This repository is only the front-end part of our app.

The back-end API is deployed so you can run To run QuizLife locally, you must run the back-end repository that you can find here, using the comand $ npm start.


How to use

Given this is the front-end of the project, it requires the API data from the other project which is linked here: node.JS API backened. Once you have this downloaded and running (instructions are on the linked repo) follow the instruction below:

$ git clone https://github.com/antoniobelmar/Pub-Quiz-App.git
$ cd Pub-Quiz-App
$ npm install
$ npm start

Visit http://localhost:3000/.

To run tests:

$ npm test
  • Keep in mind that you would need to have your local server open if you are running any feature tests in order for the driver to be able to visit the page.

Technologies

These are the technologies which were used in both the front and back-end

Tech Where? What it does
mongoDB Database Stores all our quizzes and questions
node.JS and express Back-end Contains a server. Communicates between our database and the user interface
ws, ws-express-ws Back-end Allows us to broadcast questions in real-time and to broadcast all scores when the quiz ends as well as playing multiple quizzes at the same
React.js Front-end Provides the user interface for building and playing the quizzes
sinon.js, chai, mocha Testing Test-runner, assertions library and spies and mocks library in both the back and front-end
zombie.js, supertest, enzyme Testing Browser tests, API tests and testing all React components

Team

This project was done by: