SCORM Debugger
Upload a SCORM 1.2 package and test it right in your browser. Every LMS API call is logged and the CMI data model is inspected live — nothing is uploaded to any server.
Drag a SCORM package (.zip) here or click to choose one
SCORM 1.2 .zip package
Your package is unzipped and run entirely in your browser. It is stored locally only and automatically deleted within 8 hours.
What the SCORM Debugger does
SCORM (Sharable Content Object Reference Model) is the standard that lets e-learning content talk to a Learning Management System (LMS). When a SCORM course runs, it calls a JavaScript API — LMSInitialize, LMSGetValue, LMSSetValue, LMSCommit, LMSFinish — to read and store data such as completion status, score and bookmark location.
This tool acts as a fake LMS entirely in your browser. It unzips your SCORM 1.2 package, serves it through a service worker so every asset loads correctly, and injects a mock SCORM API that logs every call and keeps a live CMI data model. It's ideal for checking whether a package initializes, sets its status and score, and stores suspend data — without uploading it to a real LMS.
Everything happens locally: the package is never sent to a server, is kept only in your browser's cache, and is automatically removed within 8 hours.
Frequently asked questions
Is my SCORM package uploaded to a server?
No. The .zip is unzipped and run entirely in your browser using a service worker. Nothing is sent to any server.
Which SCORM version is supported?
SCORM 1.2. The tool injects the SCORM 1.2 API (window.API) and its CMI data model.
Why doesn't my package load?
The tool needs a valid launch file — an index.html at the package root or a resource href in imsmanifest.xml. Packages that require a real LMS backend or SCORM 2004 may not run.
How long is my package stored?
Only in your browser's local cache, and it is automatically deleted within 8 hours. You can also click 'Change package' to remove it immediately.
Does the data I set persist?
During the session, yes: LMSSetValue writes to an in-memory CMI model and LMSGetValue reads it back, so you can verify status and score. Resetting the session or reloading clears it.
Related tools
- Text EditorRich formatting with PDF, DOCX and HTML export
- Text ComparatorCompare 2 to 4 texts side by side and see the differences
- Code EditorSyntax highlight for HTML, CSS, JS, Python and more
- JSON FormatterFormat, validate and minify JSON in one click