Skip to main content

Load SCORM packages into Open edX courses

Project description

Abstract Scorm XBlock

Yet another SCORM XBlock for Open edX®.

Supports course export/import. Editable within Open edx Studio. Saves student state and reports scores to the progress tab of the course. Currently supports SCORM 1.2 and SCORM 2004 standards.

Developed by Abstract Technology, based on edx_xblock_scorm by Raccoon Gang .

Installation

Install package with

pip install abstract-scorm-xblock

Usage

  • Add abstract_scorm_xblock to the list of advanced modules in the advanced settings of a course.
  • Add a scorm component to your Unit.
  • Upload a zip file containing your content package. The imsmanifest.xml file must be at the root of the zipped package. Make sure you don't have an additional directory at the root of the zip archive.
  • Publish your content as usual.

Development

Setup

To setup the development environment:

  • create a Python3 virtualenv. If direnv is installed a direnv allow should be enough.
  • install derex with pip install -r requirements.txt
  • setup the derex project. Read the documentation for further informations.

Development and Debugging

In order to be able to develop and debug effectively some steps may be taken:

  • get a shell inside the container:

    cd derex_project
    ddc-project exec cms sh
    
  • setup the package in editable mode. This will allow for testing changes without the need to reinstall the package:

    pip install -e /openedx/derex.requirements/abstract_scorm_xblock
    
  • launch the Django debug server manually and bind it on port 81:

    python manage.py cms runserver 0:81
    
  • on your browser https://studio.scorm.localhost:81 should now be available. You should now be able to insert debug code in both Python and JS files and benefit from Django runserver auto reload feature.

Running tests

Tests can be run from the derex project directory by running:

ddc-project run --rm lms python manage.py lms test abstract_scorm_xblock --keepdb

The first time this command is run it will initialize the test database. Remove the --keepdb flag if you want the test database to be created/destroyed each time.

Caveats

  • If a SCORM package is deleted from the course "Files & Uploads" section, the Import/Export functionality will export a course with a broken XBlock.

TODO

  • Delete extracted old SCORM packages from default storage

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

abstract-scorm-xblock-1.0.0.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

abstract_scorm_xblock-1.0.0-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

Details for the file abstract-scorm-xblock-1.0.0.tar.gz.

File metadata

  • Download URL: abstract-scorm-xblock-1.0.0.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.6.9

File hashes

Hashes for abstract-scorm-xblock-1.0.0.tar.gz
Algorithm Hash digest
SHA256 56e80e3236102c3d5c801634c21aa18d7a397eaf60f1d846a9cd993fa7b74d1b
MD5 b343255eccc7757d2d9f29ec8b748ee3
BLAKE2b-256 0471e08247bf119cfac50ab4416199feecf3c31f0330963146d083eaa4300950

See more details on using hashes here.

File details

Details for the file abstract_scorm_xblock-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: abstract_scorm_xblock-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 20.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.6.9

File hashes

Hashes for abstract_scorm_xblock-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d8fc1824b9ad457be64ccb54212142c221d314106feae6b74d61a0f75dd7d4da
MD5 d0531947a7797f77ad366adb4b0e3efa
BLAKE2b-256 8c541457cd2bd410539b223e0ce68b4c2627d8d3cbb749ab56edef5296622399

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page