Skip to content

React SCORM Provider

A React context and higher-order component over the pipwerks SCORM wrapper

Stale · 44 mo Last commit Checked · 24 Aug 2026

The facts

Licence
MIT — OSI approved
Deployment
Embedded in your own application
Platforms
Library · Web
Vendor
S4 NetQuest

Standards support

Every line says where the claim came from. We do not test conformance ourselves and we issue no badge of our own.

Standards support for React SCORM Provider, with the source of each claim and the date it was last confirmed.
Standard Supported Provenance Checked Note
SCORM 1.2 Yes editor-checked · 24 Aug 2026— source, opens in a new tab`ScormProvider` imports `pipwerks-scorm-api-wrapper` and branches on the detected version, reading `cmi.core.student_name` and writing `cmi.core.score.*` when the connection is 1.2.
SCORM 2004 Yes editor-checked · 24 Aug 2026— source, opens in a new tabThe same component reads `cmi.learner_name` and writes `cmi.score.*` on a 2004 connection. The `version` prop accepts only '1.2' or '2004'; no 2004 edition is distinguished.
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

React SCORM Provider is a two-part library from the US agency S4 NetQuest: a ScormProvider component that opens the LMS connection once near the root of the tree, and a withScorm higher-order component that injects the connection state and setters into any child. Underneath it is the pipwerks wrapper; the value added is React-shaped — learner name, completion status, score and suspend data arrive as props rather than as calls you have to sequence yourself against a component lifecycle.

For a single-SCO React module this is a sensible amount of structure, and the README is unusually honest about the boundary: it is not a packager, it assumes one SCO, and it expects suspend data to be JSON. Those constraints match how most React courses are actually built.

The caveat is age. The last commit is January 2023, the last npm release, 0.2.4, is from April 2020, and the provider is still a class component that pulls in react-autobind. It does use React.createContext and exports the context object, so you can call useContext on it yourself, but no hook ships with the library. It draws around 500 npm downloads a month against 67 stars and 23 forks. Nothing is broken — the pipwerks code beneath it has been stable for years — but nothing is being fixed either. Treat it as a well-shaped reference to copy from rather than a dependency to carry for the life of a project.

Alternatives to React SCORM Provider

Chosen by hand because they solve the same problem, not because they share a keyword.

pipwerks SCORM API Wrapper
The JavaScript wrapper most SCORM courses have been built on since 2008
scorm-again
A tested JavaScript SCORM 1.2 and 2004 runtime for anything that has to host a course

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