Writing Questions¶
Questions are JSON files — arrays of objects, one per question. You load them with the CLI:
The three question types¶
Students pick one option. The presenter sees a bar chart.
{
"text": "What is the capital of France?",
"type": "multiple_choice",
"options": ["London", "Paris", "Berlin", "Madrid"],
"correct": "Paris"
}
options— the answer choices (2-6 recommended)correct— optional. If set, the presenter can reveal the answer (green highlight for correct, red for others)
Students type a single word. Frequent words appear larger.
Field reference¶
| Field | Type | Required | Description |
|---|---|---|---|
text |
string | Yes | The question shown to students |
type |
string | Yes | multiple_choice, word_cloud, or open_ended |
options |
array of strings | Only for multiple choice | The answer choices |
correct |
string | No | Correct answer — must exactly match one of the options |
Full example file¶
Here's a complete quiz with all three types. Save it as my_quiz.json:
[
{
"text": "What is 2 + 2?",
"type": "multiple_choice",
"options": ["3", "4", "5", "6"],
"correct": "4"
},
{
"text": "In one word, describe your favorite programming language.",
"type": "word_cloud"
},
{
"text": "What would you like to learn more about?",
"type": "open_ended"
}
]
Then load it:
Tips¶
Keep options short
Multiple choice options need to fit on a phone screen. Aim for 1-8 words per option.
Word clouds work best with one-word answers
The prompt should guide students toward single words. "In one word..." is a good prefix.
You can mix types freely
A single JSON file can contain multiple choice, word cloud, and open-ended questions in any order.
Correct answer matching is exact
"correct": "Paris" will only match "Paris" in the options, not "paris" or " Paris".