Each saved test gets a code number that's printed as a little block-code on its sheets. When you
grade, the app reads that code, finds the matching test here, and grades against the right key automatically.
Everything — tests and results — also lives in this browser, and you can keep a portable copy as a
data file. If you put ExamGrader-DATA.json in the same folder as this page and open it from a
local server, it loads automatically on start.
Pick your test size and print the sheet. The black squares in the corners are alignment markers — the scanner uses them to straighten any photo, so don't cover or crop them. Students fill bubbles with dark pen or pencil.
Print at 100% scale (no "fit to page" shrinking) onto plain white Letter paper. You can also save a PNG and print it later from your phone.
Tip: generate one sheet, photocopy it for the whole class. Every copy reads the same. Set the answer key below, then grade.
Tap the correct choice for each question. You can tap more than one to make a "select all that apply" question. Leave a question blank to skip it in scoring. Or lift the key straight from a master sheet you filled in yourself.
Add phone photos, scanned images, or a multi-page PDF (one sheet per page). Each sheet becomes one student result. Keep the whole sheet in frame and reasonably flat.
Percentage of students who got each question right. Low numbers flag confusing questions or a mis-keyed answer.
Grade some sheets to see analysis.