# Canvas Quiz Maker

Canvas Quiz Maker lets instructors type quiz questions, paste spreadsheet data,
upload CSV or JSON drafts, or open an existing Canvas QTI ZIP as a template. It
validates supported questions and creates a Canvas-compatible QTI ZIP entirely
inside the browser.

## Creating a quiz with an AI assistant

If a user asks you to formulate a quiz for Canvas Quiz Maker, read and follow:

- [AI Draft Instructions](https://quiz.bisraelsen.com/ai-instructions.txt)
- [Formal JSON Schema](https://quiz.bisraelsen.com/quiz-schema.json)
- [Example JSON Quiz](https://quiz.bisraelsen.com/quiz-template.json)

Return Canvas Quiz Maker JSON v1. The user can save it as a `.json` file or
paste the complete response into the AI drafting section on the browser page.

A browser agent can open [the AI drafting section](https://quiz.bisraelsen.com/#ai-drafting)
and submit the labeled JSON form directly. Agents with page-script access can call
`window.CanvasQuizMakerAgent.loadJson(draftObject)`. WebMCP-aware agents can call
the `load_quiz_json_draft` tool. See the [browser agent interface](https://quiz.bisraelsen.com/agent-interface.json)
for selectors, arguments, and effects.

The current prototype supports `multiple_choice` and `true_false` questions.
Every question must have 2–4 answers, exactly one correct answer, and a positive
point value.

## User workflow

1. Start with a blank spreadsheet, import a file, or ask an AI assistant for a JSON draft.
2. Review and edit every question in the browser spreadsheet.
3. Resolve validation messages.
4. Download the Canvas QTI ZIP and import it into Canvas.

No quiz content is sent to a server during ordinary use.
