---
title: "Laravel Scorm"
description: "laravel-scorm is the server-side half of SCORM support for a Laravel application: upload a package, and it extracts the zip to a configured disk (local or S3), parses imsmanifest.xml into SCO records, creates the migrations for the tracking tables, and stores each learner's CMI data as they work through the course. Configuration is a published config/scorm.php, with translatable runtime error messages."
canonical_url: "https://scorm-tools.com/tools/laravel-scorm"
last_updated: "2026-10-31T10:22:02.526Z"
---

laravel-scorm is the server-side half of SCORM support for a Laravel application: upload a package, and it extracts the zip to a configured disk (local or S3), parses `imsmanifest.xml` into SCO records, creates the migrations for the tracking tables, and stores each learner's CMI data as they work through the course. Configuration is a published `config/scorm.php`, with translatable runtime error messages.

It fits teams that already have a Laravel product with users, courses and a database, and want SCORM content to become one more trackable activity rather than a reason to buy an LMS. It is not a drop-in feature: the README's prerequisites include serving extracted content from a separate domain outside the application root, which is the right call for security but means infrastructure work before anything renders.

The gap to be clear about is 2004. Packages are detected and tracked, but the two-thousand-and-four story stops at the data model — no sequencing, no navigation requests, no rollup. Single-SCO courses behave; anything relying on `imsss` rules will not.

Maintenance is real but thin: pushed March 2026, forty-eight stars, thirty-seven forks, nine open issues, and a README that opens by asking for collaborators. One maintainer, actively responding — which is better than most packages in this category, and still a single point of failure.
