scorm-player
Browser-only SCORM 1.2 player and run-time inspector, with no server and no upload
The facts
- Licence
- MIT — OSI approved
- Pricing
- Open source Price source for scorm-player, opens in a new tab
- Deployment
- Self-hosted
- Platforms
- Web
Standards support
Every line says where the claim came from. We do not test conformance ourselves and we issue no badge of our own.
| Standard | Supported | Provenance | Checked | Note |
|---|---|---|---|---|
| SCORM 1.2 | Yes | editor-checked · 24 Aug 2026— source, opens in a new tab | All eight API functions, the eleven error codes and the CMI type and vocabulary rules are implemented in src/cmi.js and src/scorm-api.js. Read in source; the project's own test suites were not run for this listing. | |
| SCORM 2004 | No | editor-checked · 24 Aug 2026 | Explicitly not implemented. Content probing for API_1484_11 is told so rather than being allowed to fail silently. | |
| xAPI | Not stated | — | — | — |
| cmi5 | Not stated | — | — | — |
| AICC | Not stated | — | — | — |
| LTI | Not stated | — | — | — |
- Claimed
- — the vendor states it. We have not confirmed it.
- Checked
- — an editor confirmed it on the date shown.
- Verified
- — an official registry lists it, and we link to the entry.
Editor's notes
A static site that plays a SCORM 1.2 package and shows the run-time conversation while it happens. JSZip unpacks the archive in the browser, the files are written to the Cache API and served back through a service worker at a real same-origin path — which matters, because SCORM content uses relative asset paths and finds its LMS by walking window.parent for an object named API, and blob URLs break both.
The implementation goes further than most demonstrations into the behaviour the specification assigns to the LMS rather than the content: session_time accumulating into total_time, cmi.core.exit producing the next attempt's entry, adlcp:masteryscore deriving pass or fail from a raw score, maxtimeallowed with its time-limit action, and AICC-script prerequisites. Each of those decisions is written into the call log as an explicit entry, so the player explains itself rather than behaving magically.
Two caveats decide whether it is for you. It is SCORM 1.2 only, by design. And it is brand new: two commits on a single day in July 2026, no stars, no external users, and its conformance figures come from a harness the author wrote and shipped in the same repository — plausible, and unverified by anyone else.
Read it as a well-argued reference implementation of the LMS side, and as a quick local harness for a 1.2 package. Do not yet depend on it.
Listed on scorm-tools.com
Maintainers and vendors are welcome to show the listing badge in a README or on a product page. It is free, it does not require a claim, and there is nothing to buy.
Get the embed code