Omni quiz tool Read me

 Omni Quiz Tool

Your friendly desktop partner for creating, taking, and reviewing tests.


In a A Hot Summer Day Idea

Have you ever found yourself studying for a big exam, like a foreign language test, and getting totally bored and overwelmed by the process? I sure have. I was tired of the constant cycle of typing questions into a Word document, trying to hide the answers from myself, and then manually calculating my score. It was clumsy and took the focus away from what really mattered: learning.

On one particularly hot summer day, I thought, "There has to be a better way!" And so, this little project was born.

This tool is my answer to that problem. It is a simple, offline desktop application designed to make creating and taking practice exams as easy as possible, so you can spend more time studying and less time fighting with document formatting. I hope it helps you as much as it has helped me!


 Getting Started

  1. Download the application. If you are reading this online, go back a page, and click download. If not, am guessing you have already openned this document from the application itself, or found this document in the app folders. If so, you can skip ahead.
  2. Unzip the folder to a location on your computer (like your Desktop or Documents folder).
  3. Run the omniquiz.exe ) executable inside the folder.

That's it! The main menu will appear, and you are ready to go.


 How to Use the Application

The application is designed to be fully usable with both a mouse and a keyboard for maximum comfort and accessibility.

Main Menu

When you start the app, you will see a simple menu:

Taking an Exam (Exam Mode)

Once you open an exam, you enter the focused exam mode. It is designed to be clean and simple, helping you concentrate.

Navigating with the Keyboard

Reviewing Your Results

After finishing the exam (or if the timer runs out), you will see a summary of your results. From here, you can choose to "Review Answers" to see a detailed breakdown of every question, your answer, the correct answer, and any explanations provided.


 The Exam Editor: Building Your Tests

The editor is where you bring your tests to life. It is split into two main sections: the question list on the left and the question details on the right.

  1. Add a Question: Click the "Add Question" button. A "New Question" will appear in the list on the left and the editor on the right will become active.
  2. Set the Time Limit: At the very top, you can set a time limit in minutes for the entire exam. Set it to 0 for an untimed test.
  3. Write the Question: Type your question into the "Question Text" box.
  4. Set the Number of Choices: Use the "Number of Choices" spinner to select how many options this question will have (from 2 to 5). The input boxes below will update automatically.
  5. Write the Choices: Fill in the text for each choice (a, b, c, etc.).
  6. Select the Correct Answer: Use the "Correct Answer" dropdown to mark which choice is the right one.
  7. Add an Explanation (Optional): In the "Solution/Explanation" box, you can add extra text that will only be shown to the user during the review phase after the exam is complete. This is a great place for notes or detailed solutions.
  8. Delete a Question: Select a question from the list on the left and click the "Delete Selected" button.
  9. Save Your Work:
    • Save: If you are editing an existing file, this will overwrite it with your changes.
    • Save As...: Allows you to save your new exam as a .json file anywhere on your computer.

What Can You Create? (Use Cases)

This tool is more flexible than it looks! Here are a few ideas for what you can build:


 For the Curious: The JSON File Structure

While the editor is the easiest way to create exams, you can also write or edit the .json files directly. This is useful for creating exams programmatically or for making bulk changes.

Each file has a main structure with a time limit and a list of questions.

{
  "timeLimitMinutes": 10,
  "questions": [
    { ... question object 1 ... },
    { ... question object 2 ... }
  ]
}

Each question object has the following fields:

A Universal Example

This example uses concepts that are understood across cultures and can be used as a template.

{
  "question": "What is the result of 2 + 2?",
  "choices": {
    "a": "3",
    "b": "4",
    "c": "5"
  },
  "answer": "b",
  "solution": "The sum of two and two is four. This is a fundamental concept in arithmetic."
}

← Back