Programming-task widget for OpenExam (spec 0.2). Student code is run in a WASM-sandboxed runtime; expected stdout is compared.
Reference parser: OpenExam source (Markdown + directives) to OEAST, spec 0.1.
Command-line interface for OpenExam: new / validate / render / preview (spec 0.1).
Matching-pairs widget for OpenExam (spec 0.2).
Type contracts and tiny helpers for OpenExam addons, parsers, and renderers (spec 0.1).
Numeric-answer widget + paramGenerators for OpenExam (spec 0.2).
Multiple-choice widget for OpenExam (spec 0.1).
Pool selection + exam composition for OpenExam (spec 0.2). Deterministic via a seeded RNG per ADR-005.
True-or-false widget for OpenExam (spec 0.2).
OEAST to HTML renderer for the preview path (spec 0.1).
Semver-resolving addon dependency resolver + lockfile + audit, per ADR-010.
Free-text response widget for OpenExam (spec 0.2). Manual grading only in M2; AI grading lands in M6.
OEAST to LaTeX renderer for the print path (spec 0.1).
Declarative-render protocol + browser host runtime for OpenExam widgets (ADR-009 Layer 4).
WASM-sandboxed runtimes for student-code execution (per ADR-005). v1 ships JavaScript via QuickJS-WASM; Pyodide for Python is a v2 follow-on.
Fill-in-the-blank cloze widget for OpenExam (spec 0.2).
Regex-validated text-answer widget for OpenExam (spec 0.2).
An implementation of the Unicode UTS #46: Unicode IDNA Compatibility Processing
An implementation of the WHATWG URL Standard's URL API and parsing machinery
Constants and utilities about visitor keys to traverse AST.
minimal implementation of a PassThrough stream
ECMAScript parser
Like which(1) unix command. Find the first instance of an executable in the PATH.
a glob matcher in javascript