QTI.JS is a Javascript-based, free and open-source, delivery engine for tests and assessments, which almost fully implements Version 2.2 of the IMS Question & Test Interoperability (QTI) specification.

Quoting IMS, "QTI enables the exchange of item (question) and test content and results data between authoring tools, test construction tools, learning platforms, assessment delivery systems, and scoring/analytics engines." First released in 1999, QTI has become the primary standard for interoperable assessment content within the education technology world, and is supported by most popular Learning Management platforms, Assessment and Question Authoring tools, and Assessment Delivery Systems.

QTI.JS supports all 21 QTI question types, all processing operators, templates, adaptive items, all feedback types, rubrics, shared assessment stimulus blocks, conditional questions, branching, selection and ordering, linear and non-linear tests, individual and simultaneous submission, results reporting, MathML and many other QTI Version 2.2 features. It is serverless, requires no configuration, and is fully themable. It is likely the most complete implementation of QTI Version 2.2 delivery features yet to be released.

QTI.JS is currently in preview/beta release, and is aiming for production release and certification by IMS in the first half of 2019. The source code of QTI.JS has been released on GitHub under an MIT license.

For samples QTI 2.2 tests delivered by QTI.JS, visit our Sample Tests Page.