escolalms/scorm

Escola LMS SCORM management

Maintainers

👁 qunabu

Package info

github.com/EscolaLMS/Scorm

Language:JavaScript

Type:package

pkg:composer/escolalms/scorm

Statistics

Installs: 128 288

Dependents: 2

Suggesters: 0

Stars: 13

Open Issues: 0

0.3.1 2025-01-23 11:52 UTC

Suggests

None

Provides

None

Conflicts

None

Replaces

None

Apache-2.0 13a15e7dc1547b8c60f5c45f6fa066532e77fe5f

  • Mateusz Wojczal <mateusz.woop@escolasoft.pl>

README

👁 swagger
👁 codecov
👁 phpunit
👁 downloads
👁 downloads
👁 downloads

What does it do

This package is used to store and manage SCORM packages.

Installing

  • composer require escolalms/scorm
  • php artisan migrate
  • php artisan db:seed --class="EscolaLms\Scorm\Database\Seeders\DatabseSeeder"
  • php artisan db:seed --class="EscolaLms\Scorm\Database\Seeders\PermissionTableSeeder"

Database

  1. scorm - Scorm package main data.
  2. scorm_sco - Educational content data associated with the Scorm package.
  3. scorm_sco_tracking - Stores the user's progress.
Scorm 1 -> n ScormScos
Scorm 1 -> n ScormScoTracking

Tutorial

  1. Get the Scorm package from EscolaLms\Scorm or Sample SCORM packages.
  2. Upload Scorm package in Zip format /api/admin/scorm/upload.
  3. Start the player by specifying uuid Scorm SCO /api/scorm/play/{uuid}.
  4. The package supports tracking user progress, to achieve this, you need to send an authorization token in the header.

Endpoints

  • /api/admin/scorm/upload - Upload ZIP Scorm Package into app local storage.
  • /api/scorm/play/{uuid} - SCORM SCO player.

All the endpoints are defined in swagger 👁 swagger

Tests

Run ./vendor/bin/phpunit to run tests. See tests folder as it's quite good staring point as documentation appendix.

Test details 👁 codecov
👁 phpunit

How to use this on frontend.

Endpoint /api/scorm/play/{uuid} returns the html file with the <iframe>.

<html lang="en">
...
<iframe src="api/storage/{scorm-version}/{uuid}/index.html"></iframe>
...
</html>

Admin panel

List of Scorm packages 👁 List of Scorm packages

Scorm player 👁 Scorm player

Permissions

Permissions are defined in seeder.

Todo.

The package does not support all available scorm formats #1 #2