A project done in fullfillment of the application process for Andela Cohort 9
Why Jibiza? Jibiza is a swahili word meaning 'answer back' as translated into English. This formed the basis for why it was the name I settled for in regards to the Quiz Application project that I was assigned to accomplish.
Jibiza is a console based application that should be used to present questions with multiple choice questions that need be answered
The required commands for the application were:
Command | Argument | Explanation |
---|---|---|
quiz list |
None | List of all the available quizzes in your library |
quiz import |
<path_to_quiz_JSON> |
Import a new quiz from a JSON file |
quiz take |
<quiz_name> |
Start taking a new quiz |
The following requirements were also highlighted
When a user takes a quiz he gets a score based on the answers he got right
Timing can be added to quiz as a parameter in the JSON
As a user I can import quizzes from JSON files
Add in an online quiz repository using Firebase (extra credit)
List all the online quizzes
Download a quiz to your library
Publish a local quiz to the online library
JSON Format for Quizzzes should contain the following keys:
questions
- List of questions in the quiz
text
- Question text
options
- List of options for the question
.is_answer
- Parameter of an option that can be true or false. Indicates whether or not that option is the correct answer.
quiz take <quiz_name>
- Start taking a new quiz
To be able to get this project to your local machine
First git clone this project at https://github.com/Kimanicodes/bc-9-jibiza.git
Navigate to the bc-9-jibiza
folder.
Create a virtual environment using the virtualenv
command and activate it.
Install the requirements via pip install -r requirements.txt
Run the application in your terminal via python jibiza.py
Alternatively you can follow the steps through this video:
A few bugs were encountered during the creation of Jibiza.
The uploadquiz
functionality is erratic.
The timer sometimes does not work as expected.(Fixed)
The author @Kimani Ndegwa