// the find
adlnet/xAPIWrapper
Wrapper to simplify communication to an LRS
A JavaScript client library for the Experience API (xAPI/Tin Can), the e-learning standard for recording learning activity statements to an LRS. It wraps the xAPI HTTP calls in a friendlier API and handles auth, configuration, and statement construction. Mainly useful if you're building courseware or LMS integrations that need to track learner activity.
The XAPIStatement builder actually saves real work — constructing valid statement objects manually is tedious and error-prone, and the constructor shortcuts handle the most common cases cleanly. The config-from-URL-params feature is genuinely useful for SCORM-like launch patterns where credentials are passed via query string. The strict error-first callback mode (opt-in via strictCallbacks) is a thoughtful addition for codebases that want consistent async error handling. Shipping a self-contained minified bundle with all dependencies baked in removes the usual dependency hell for browser-based e-learning content.
Dead since December 2022 — no commits in over three years, which matters a lot for a spec-compliance library since xAPI has had profile updates. The callback-based API has no Promise or async/await surface at all; every modern JavaScript project will need to wrap it. The test suite runs in-browser against a live LRS rather than being automatable, which makes CI integration painful. The synchronous XHR option (no callback = blocking request) is actively harmful in modern browser contexts where synchronous XHR on the main thread is deprecated and will eventually be removed.