QuizHUB is a local desktop app designed to help NUS students easily record examinable questions and generate quizzes from their very own question bank to test their understanding via a Command Line Interface (CLI). Easily launch-able on the go, QuizHUB is a versatile tool that aims to streamline and optimize the revision experience for NUS students from all fields of study.
QuizHub from here.help abc would perform the same function as help[] in the commands denote a placeholder in the command which you should replace
with corresponding values.
[question] would indicate that you should replace the placeholder with a questionhelpAssists new users in familiarising with the application. Provides a list of commands for the user to get started with the essentials.
Format: help
Example of usage:
help Notes:
shortAdds a new short question and its answer to the question and answer bank along with the assigned module and difficulty level.
Format: short [question]/[answer]/[module]/[difficulty]
easy, normal, and hardExample of usage:
short What is the value of Pi to 2 decimal places?/3.14/math/easy I have added the following question OwO:
[S][ ] What is the value of Pi to 2 decimal places? / 3.14 | math | EASY
Now you have 1 questions in the list! UWU
short What is 0.5 in fraction?/1\slash2/fraction/easy I have added the following question OwO:
[S][ ] What is 0.5 in fraction? / 1/2 | fraction | EASY
Now you have 2 questions in the list! UWU
Notes:
mcqAdds a new mcq question and its answer to the question and answer bank along with the assigned module and difficulty level.
Format: mcq [question]/[option 1]/[option 2]/[option 3]/[option 4]/[answer index]/[module]/[difficulty]
easy, normal, and hardThe “pipe” character is not allowed and will be removed if present in any fields.
mcq what is the value of pi?/2.71/9.81/3.14/0/3/math/Easy I have added the following question OwO:
[M][ ] what is the value of pi? / 2.71 / 9.81 / 3.14 / 0 / 3 | math | EASY
Now you have 3 questions in the list! UWU
mcq is 5 \slash 3 rational?/yes/no/maybe/all of the above/1/fraction/easy I have added the following question OwO:
[M][ ] is 5 / 3 rational? / yes / no / maybe / all of the above / 1 | fraction | EASY
Now you have 6 questions in the list! UWU
listList all the questions from the question and answer bank in the storage.
Format: list
Examples of usage:
list 1: [S][ ] What is the value of Pi to 2 decimal places? / 3.14 | math | EASY
2: [S][ ] What is 0.5 in fraction? / 1/2 | fraction | EASY
3: [M][ ] what is the value of pi? / 2.71 / 9.81 / 3.14 / 0 / 3 | math | EASY
4: [M][ ] is 5 / 3 rational? / yes / no / maybe / all of the above / 1 | fraction | EASY
deleteDeletes the question with the specified question number from the question and answer bank.
Format:
delete [question number]
Example of usage:
delete 4 Roger that! I have deleted the following question >w< !
[M][ ] is 5 / 3 rational? / yes / no / maybe / all of the above / 1 | fraction | EASY
Now you have 3 questions in the list! UWU
Notes:
findFinds and displays all questions in the poll that match the criteria,
either in the question field (with the /description keyword),
or the module field (with the /module keyword) but not both. You may use partial matches.
Format:
find /description [question description] Find a question by its questionfind /module [question module] Find a question by its moduleExamples of usage:
find /description Pi Here are questions that matched your search:
1: [S][ ] What is the value of Pi to 2 decimal places? / 3.14 | math | EASY
3: [M][ ] what is the value of pi? / 2.71 / 9.81 / 3.14 / 0 / 3 | math | EASY
find /module fraction Here are questions that matched your search:
2: [S][ ] What is 0.5 in fraction? / 1/2 | fraction | EASY
Notes:
editEdits the description or answer of an existing question in the question and answer bank by referencing the number of the question in the existing question list in the question and answer bank.
Format:
edit [question number] /description [newDescription] to edit descriptionedit [question number] /answer [newAnswer] to edit answersedit [question number] /option[1...4] [newAnswer] to edit a choice of MCQ questionExamples of usage:
edit 1 /description What is the value of Pi to 3 decimal places? [S][ ] What is the value of Pi to 3 decimal places? / 3.14 | math | EASY
Roger that! I have edited the following question >w< !
edit 1 /answer 3.142 [S][ ] What is the value of Pi to 3 decimal places? / 3.142 | math | EASY
Roger that! I have edited the following question >w< !
edit 3 /option1 2.713 [M][ ] what is the value of pi? / 2.713 / 9.81 / 3.14 / 0 / 3 | math | EASY
Roger that! I have edited the following question >w< !
Notes:
startStarts a quiz which fetches the specified category from the question bank in normal / random order to be tested. The app will display the fetched questions one at a time on CLI and the user is required to enter answer through CLI. Upon every user answer entry, the app feedbacks if the user answered correctly, loads the next question and updates the score. When all questions are answered, the quiz terminates automatically and the final user quiz score is displayed.
Format: start /[quiz mode] [start details] /[qn mode] /[qn type]
all for all modules, or module with the corresponding module in start details for a selected module.normal for standard sequence or random for random sequenceshort for mcq for short and mcq types, or mix for all typesExamples of usage:
start /module num /normal /mix start /module num /random /short start /all /random /mcq start /all /normal /mix Taking the quiz:
Notes:
shuffleShuffle questions within question list to a random order,
Format: shuffle
Output:
Questions are now shuffled!
1: [S][ ] What is 0.5 in fraction? / 1/2 | fraction | EASY
2: [M][ ] is 5 / 3 rational? / yes / no / maybe / all of the above / 1 | fraction | EASY
3: [S][ ] What is the value of Pi to 2 decimal places? / 3.14 | math | EASY
4: [M][ ] what is the value of pi? / 2.71 / 9.81 / 3.14 / 0 / 3 | math | EASY
Notes
markdiffChanges the difficulty level of an existing question in the question and answer bank by referencing the number of the question in the existing question list in the question and answer bank.
Format: markdiff [question number] /[question difficulty]
Examples of usage:
markdiff 1 /easy Roger that! I have marked the following question as easy >w< !
[S][ ] What is 0.5 in fraction? / 1/2 | fraction | EASY
markdiff 2 /Hard Roger that! I have marked the following question as hard >w< !
[M][ ] is 5 / 3 rational? / yes / no / maybe / all of the above / 1 | fraction | HARD
Notes:
easy, normal, or hard will trigger a warning messagebyeExits the program
Format: bye
Storage:
Editing:
questionlist.txt file in the working directory of the QuizHub.jar filequestionlist.txt is not already present, you should run the program once for initializationFormat:
S | <done/undone> | <question> / <answer> | <module> | <difficulty>
M | <done/undone> | <question> / <ans1> / <ans 2> / <ans 3> / <ans 4> / <correct ans> | <module> | <difficulty>
Example of storage file:
Latest Questions
S | undone | Is Java Fully OOP? / yes | CS2113 | NORMAL
S | undone | How many different STs are there in a complete graph with 9 vertices? / 4782969 | CS2040C | HARD
S | undone | Does one-time-pad satisfy perfect secrecy / Yes | CS3235 | EASY
M | undone | derivative of x^2 / x^2 / 2x / x / x^3 / 2 | MA1521 | EASY
M | undone | Should we use arrowhead code / yes / no / maybe / unsure / 2 | CS2113 | EASY
M | undone | Name of Java mascot / duke / duck / dick / drew / 1 | CS2113 | EASY
Q: How do I transfer my data to another computer?
A: Transfer the questionlist.txt generated to the same local directory as the .jar file of the program in another
computer. The .jar file should be in its own directory.
Q: Why does my questionlist.txt look slightly different from when I run list?
A: The questionlist.txt generated is not originally designed to be seen by
the user. The different format is used in order to parse questions without error.
Q: What’s the difference between shuffle and /random mode in start?
A: During user testing, it was found that users sometimes will
revise by looking at all the questions with list, as such functionality to
shuffle the questions permanently was added.
help - shows the list of commands you can useshort [question]/[answer]/[module]/[difficulty] - adds a short answer question and its answer to the listmcq [question]/[option 1]/[option 2]/[option 3]/[option 4]/[answer index]/[module]/[difficulty] -
adds a multiple-choice question and its answer to the listlist - shows the list of questions and answersdelete [question number] - deletes the question and answer at the specified numberfind /description [description] - displays all questions containing the specified descriptionfind /module [module] - displays all questions that belong to the specified moduleedit [question number] /description [description] - edits the description of the question with the specified
numberedit [question number] /answer [answer] - edits the answer to the question with the specified numberedit [question number] /option[number] [new value] - edits the option of the question with the specified number (
MCQ only)start /[quiz mode] [start details] /[qn mode] /[qn type] - starts the quiz with option for /module or /all and /random or
/normal mode, with MCQ, short answer or mixed question typesshuffle - shuffle quiz questions to a random ordermarkdiff [question number] /[question difficulty] - sets the difficulty of question with the specified numberbye - exits the program