xAPI Integrator

Upload an interactive ZIP (must contain index.html). This static tool will inject the working xAPI libraries and wiring in-browser, then give you a ready-to-upload ZIP. No server required.

Upload

The resulting ZIP will keep index.html at the root of the content folder and add lib/xapiwrapper.min.js + lib/xAPI.js. CSP-blocked GA/AdSense will be removed.

Mode

Timeline mode attempts to track button clicks, select changes, canvas drags, and auto-save on Pause if typical IDs exist (e.g., playBtn, pauseBtn, resetBtn, shapeSelector, #simulationCanvas). It also adds a floating “Save to SLS” button as a universal fallback.

How it works (expand)
  • Unzips your upload entirely in the browser (JSZip)
  • Finds the folder containing index.html (root, single subfolder, or shallow search)
  • Removes CSP-blocked GA/AdSense scripts
  • Injects and into your content’s head if missing
  • (This page itself loads vendor files from ./vendor/*.js)
  • Optionally injects a small instrumentation snippet (Timeline mode)
  • Adds vendored xAPI libs into lib/ in the ZIP
  • Re-zips and offers a download

Note: To load vendor libraries, this page should be served over HTTP(S). Opening via file:// may block fetch of local vendor files.

Requirements from SLS:

If these parameters are not present at launch, xAPI calls will be skipped by the integrated app.

Log