Skip to content

SCORM packagers, SDKs and libraries for developers

The pieces you build with when the course is an application, not a slide deck.

Compiled and checked by the scorm-tools.com editor. Last updated .

This is the developer end of the directory, and the part no other directory covers — general software indexes exclude libraries and CLIs, and e-learning listings only track products with a pricing page.

Packagers and CLIs take a built web app and emit a conformant zip: manifest, resource declarations, the right SCORM version, sensible identifiers. Several are bundler plugins, so a course built with Vite or webpack produces a package as a build artefact rather than a manual step. API wrappers live on the content side and give your application a sane interface over the raw SCORM API — initialise, get, set, commit, terminate — while handling the LMS quirks that make raw integration miserable. Manifest tooling parses and validates imsmanifest.xml, which is where a surprising share of import failures originate. Framework integrations wrap all of that for React, Vue, Angular, Svelte, Unity and Godot.

What to look at before adopting one: does it support both SCORM 1.2 and 2004, does it expose a persistence boundary you can control, and is it still maintained? Every listing here carries the licence, the last commit date and an honest maintenance badge, because a wrapper abandoned in 2019 can still be the right answer — but you should know that going in.

26 tools · 26 open source · 4 support cmi5

Order is editorial and never for sale: standards coverage first, then maintenance state, then popularity, then alphabetical. How we list .

Tools in this category

Filter these tools

Showing 26 of 26

@gamestdio/scorm
A TypeScript port of the pipwerks wrapper, published once in 2019 and untouched since

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Stale
@studiolxd/scorm
Headless SCORM 1.2 and 2004 runtime with React, Vue, Angular, Svelte and Web Component adapters

Standards supported: 1.2 · 2004

Licence: MITPricing: Open source
@szenadam/scorm-api-wrapper
A TypeScript reimplementation of the pipwerks SCORM wrapper, published to npm

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Stale
RESCORM
React boilerplate that ships SCORM tracking alongside the application code

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Stale
React SCORM Provider
A React context and higher-order component over the pipwerks SCORM wrapper

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Stale
SCOBot
SCORM 1.2 and 2004 content wrapper with a mock LMS for working offline

Standards supported: 1.2 · 2004

Licence: CC-BY-SA-4.0Pricing: Open source
SCOL-R
A thin SCORM shell that proxies the API to content hosted on another domain

Standards supported: 1.2 · 2004

Licence: MITPricing: Open source
SCORM Cloud API v2 clients
Rustici's generated client libraries for the SCORM Cloud REST API, in six languages

Standards supported: 1.2 · 2004 · xAPI · cmi5 · AICC

Licence: Apache-2.0Pricing: Open source
SCORM-Manifests
Boilerplate imsmanifest.xml files for single-SCO SCORM 1.2 and 2004 packages

Standards supported: 1.2 · 2004

Licence: No licence filePricing: Open sourceMaintenance: Stale
SCORMify
Sixty lines of JavaScript that turn a folder of HTML into a SCORM 1.2 package

Standards supported: 1.2

Licence: MITPricing: Open sourceMaintenance: Stale
Tessera
Author a course as Svelte pages, then export the same source as SCORM, cmi5 or xAPI

Standards supported: 1.2 · 2004 · xAPI · cmi5

Licence: MITPricing: Open source
Unity-SCORM Integration Kit
Export a Unity WebGL build as a SCORM 2004 package and report progress from C#

Standards supported: 2004

Licence: Apache-2.0Pricing: Open source
dart_scorm
SCORM 1.2 and 2004 bindings for Flutter and Dart web applications

Standards supported: 1.2 · 2004

Licence: Apache-2.0Pricing: Open sourceMaintenance: Stale
eLearning Module Parser
Java library that detects and parses SCORM, AICC, cmi5 and xAPI packages into typed metadata

Standards supported: 1.2 · 2004 · xAPI · cmi5 · AICC

Licence: Apache-2.0Pricing: Open source
grunt-scorm-manifest
Grunt task that writes an imsmanifest.xml for a single-SCO package

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Stale
ngx-scorm-wrapper
An injectable Angular service wrapping the SCORM 1.2 and 2004 runtime APIs

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Stale
node-scorm-packager
Node library that writes an imsmanifest and lays out a SCORM course directory

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Stale
pipwerks SCORM API Wrapper
The JavaScript wrapper most SCORM courses have been built on since 2008

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Stale
scorm (Ruby gem)
Reads, checks and builds SCORM packages from Ruby, with a small CLI alongside

Standards supported: 1.2 · 2004

Licence: MITPricing: Open source
scorm-again
A tested JavaScript SCORM 1.2 and 2004 runtime for anything that has to host a course

Standards supported: 1.2 · 2004

Licence: MITPricing: Open source
scorm-godot-plugin
Godot editor plugin that wires a web export to the SCORM 1.2 runtime and zips it

Standards supported: 1.2

Licence: MITPricing: Open source
scorm-kit
A nine-command CLI that lints, diffs and audits SCORM packages before upload

Standards supported: 1.2 · cmi5

Licence: MITPricing: Open source
scorm-mcp-server
An MCP tool that wraps a finished HTML module into an offline SCORM package

Standards supported: 1.2 · 2004

Licence: MITPricing: Open source
simple-scorm-packager
Node package that turns a build directory into a conformant SCORM zip

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Archived
simplify-scorm
SCORM 1.2 and 2004 runtime APIs in plain JavaScript, for the LMS side of the fence

Standards supported: 1.2 · 2004

Licence: MITPricing: Open sourceMaintenance: Stale
usescorm
React hook that wraps the SCORM run-time API and keeps state in suspend data

Standards supported: 1.2 · 2004

Licence: MITPricing: Open source

Questions people ask about packagers, sdks & libraries

Which JavaScript SCORM library should I use?

Look for one supporting SCORM 1.2 and 2004, still receiving commits, with an explicit persistence interface. The listings show licence, stars and last commit so you can judge maintenance rather than guess. Several long-abandoned wrappers still rank well in search — the badges here say plainly which.

Do I need a library, or can I call the SCORM API directly?

You can call it directly; it is not a large API. What libraries buy you is the tedious part — finding the API object across nested frames, handling initialisation order, normalising the differences between 1.2 and 2004, and coping with LMSs that return errors in creative ways.

What is the difference between a packager and an authoring tool?

A packager takes content you have already built and wraps it conformantly. An authoring tool creates the content. If you have a web app and need it to run in an LMS, you want a packager.

Are these production-ready?

Some are used in thousands of courses; some are a weekend project with three stars. The maintenance badge and the metrics panel on each listing exist precisely so you can tell which is which.

Authoring tools & course frameworks
Where the course gets made — and where its SCORM output is decided.
Converters & migration
Turning what you already have — decks, video, H5P, old packages — into something an LMS accepts.
Players, runtimes & debuggers
Run a SCORM package outside an LMS — and watch what it actually does.
Testing, validation & conformance
Prove a package is correct before a client's LMS proves it isn't.
LMS & LMS plugins
Where the package finally has to run — and how well each platform actually implements the spec.
xAPI & cmi5
The standards after SCORM — and the tools that actually implement them.
Distribution, licensing & hosting
Getting a course into someone else's LMS without giving away the course.
Analytics & tracking
Turning completion records into something worth reading.