This project provides a puzzles-solving game in which user is allowed to answer questions based on the selected categories, add new questions and view all questions by categories. This project also contains frontend, backend API and testing script. Features are listed as follows, have fun!
- Display questions - both all questions and by category. Questions should show the question, category and difficulty rating by default and can show/hide the answer.
- Delete questions.
- Add questions and require that they include question and answer text.
- Search for questions based on a text query string.
- Play the quiz game, randomizing either all questions or within a specific category.
-
Python 3.7 - Follow instructions to install the latest version of python for your platform in the python docs
-
Virtual Enviornment - We recommend working within a virtual environment whenever using Python for projects. This keeps your dependencies for each project separate and organaized. Instructions for setting up a virual enviornment for your platform can be found in the python docs
-
PIP Dependencies - Once you have your virtual environment setup and running, install dependencies by naviging to the
/backend
directory and running:
pip install -r requirements.txt
This will install all of the required packages we selected within the requirements.txt
file.
- Direct to the root folder of the project, set environment variable for flask app and run the server by the following
export FLASK_APP=flaskr
export FLASK_ENV=development
flask run
- Refer to
backend/README.md
for more information on endpoints and backend structure
- node js - The project is designed with node js and react js, direct to
frontend
directory and install dependancy
npm i
- Lauch the frontend - After installing all modules for node, run the following scripts to launch the frontend
npm start
-
Visit frontend - Frontend is hosted at
http://localhost:3000
by default -
Refer to
frontend/README
for more detailed information
The project is a template of Udacity Fullstack Development Nano Degree.