Skip to content

Project for the 2020-2021 Coding and Programming FBLA Competition.

Notifications You must be signed in to change notification settings

Ole113/fbla-quiz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

140 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FBLA Quiz 2021



Created by Alex for the FBLA Coding and Programming 2020-2021 Competition.

This project was bootstrapped with Create React App.

Building

  1. Install MySQL - For a detailed tutorial on installing MySQL read the questionCompiler README
  2. Create a database called questions
  3. Create a table in the questions database. Use the exact table in src/database/questionSchema.sql
  4. Either:
    1. Query the default questions in src/database/insertQuestions.sql
    2. Add custom questions by modifying the config.js file's questions field and adding custom questions. Two examples of how the format should look are provided. To query the custom questions navigate to src/database/questionCompiler/compiler.js and run node compiler.js.
  5. In src/database/questionCompiler/config.js change the host, user, password, and database fields to have the correct information. You should only need to change the password field.
  6. Install the node modules with npm install
  7. Start the backend server nodemon server.js If you run into the error Client does not support authentication protocol requested by server; consider upgrading MySQL client refer to https://stackoverflow.com/a/50131831. To make sure the server is running go to http://localhost:5000/questions. There should be no connection issues and you should see the questions in JSON form.
  8. Either:
    1. Start the app in development mode npm start
    2. Build the app for production npm run build

Note: The questions API uses port 5000. If you are using a Mac make sure that AirPlay Receiver is unticked in System Preferences > Sharing > AirPlay Reveiver as it uses the same port.

Documentation

Library's used:
Bootstrap: https://getbootstrap.com/
Google fonts: https://fonts.google.com/
React: https://reactjs.org/
Node-cron: https://www.npmjs.com/package/cron
Express: https://www.npmjs.com/package/express
Cors: https://www.npmjs.com/package/cors
MySql: https://www.npmjs.com/package/mysql
mysqldump: https://www.npmjs.com/package/mysqldump
readline: https://www.npmjs.com/package/readline
react-toastify: https://www.npmjs.com/package/react-toastify
jQuery: https://code.jquery.com/
Material icons: https://material.io/resources/icons/?style=baseline
react-router-dom: https://www.npmjs.com/package/react-router-dom

Picture Attributions:
Fbla logos: https://www.fbla-pbl.org/cmh/logos-images/
Gradient image http://www.capbl.org/conferences/nlc
Card image qa http://thinkcybis.com/story/the-national-stage/
Card image quiz https://www.cafbla.org/domain/30

About

Project for the 2020-2021 Coding and Programming FBLA Competition.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published