pipwerks SCORM API Wrapper
The JavaScript wrapper most SCORM courses have been built on since 2008
The facts
- Licence
- MIT — OSI approved
- Pricing
- Open source
- Deployment
- Embedded in your own application
- Platforms
- Library · Web
- Vendor
- Philip Hutchison
- Documentation
- pipwerks.com — opens in a new tab
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 | The wrapper walks the frame chain for `window.API`, and switches its data-model calls between `cmi.core.*` and `cmi.*` on the detected version. | |
| SCORM 2004 | Yes | editor-checked · 24 Aug 2026— source, opens in a new tab | Finds `window.API_1484_11` and uses Initialize/Terminate. It does not distinguish 2004 editions — the runtime API signature is the same across them, and sequencing is left entirely to the LMS. | |
| xAPI | No | editor-checked · 24 Aug 2026 | — | |
| cmi5 | No | editor-checked · 24 Aug 2026 | — | |
| AICC | No | editor-checked · 24 Aug 2026 | — | |
| 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
The pipwerks wrapper sits between a course and the LMS's SCORM API, and has done that job since 2008. It solves the two problems that trip up everyone writing SCORM by hand: finding the API object, which may be several frames up or in an opener window, and papering over the fact that SCORM 1.2 and 2004 use different element and method names for the same ideas.
It is aimed at anyone hand-building a SCO, or writing a publish template for an authoring tool. At roughly 900 lines of dependency-free ES5 with no build step, it drops into a package and works in whatever browser the client's LMS insists on. ActionScript 2 and 3 versions ship alongside, of historical interest only.
What it is not is a runtime. It talks to an LMS-provided API — it does not implement one, does not simulate one for local testing, and does not touch sequencing, rollup or navigation. Nor does it validate what you write.
The practical point today: the last commit was May 2023 and the file's own version string reads 2018. It is stable rather than maintained — the runtime API has not changed since 2009, so there is little to fix, but nothing will be fixed either. If you want a maintained equivalent with SCORM 2004 sequencing and a TypeScript build, look at scorm-again; if you want the smallest thing that has worked for fifteen years, this is still it.
Alternatives to pipwerks SCORM API Wrapper
Chosen by hand because they solve the same problem, not because they share a keyword.
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