---
title: "Pipwerks Scorm Api Wrapper"
description: "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."
canonical_url: "https://scorm-tools.com/tools/pipwerks-scorm-api-wrapper"
last_updated: "2026-10-31T10:22:02.943Z"
---

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.
