© Werner Randelshofer



Readme  Changes  License




What is SCORM?
Known Issues
System Requirements


TinyLMS is a lightweight learning management system for SCORM compliant learning content.


  • TinyLMS is (almost) conformant to SCORM 1.2 at conformance level "LMS-RTE1".
  • Tutorials generated with TinyLMS can be used online and offline.
  • Runtime requirements for tutorials are low: HTML, JavaScript and Cookies are all that is needed.
  • TinyLMS supports layered organization of learning content in addition to the hierarchical organization of learning content specified by SCORM.
  • TinyLMS can be used as a SCORM-to-SCORM adapter. This can be used to aggregate fine grained learning content into one big SCO.

What is SCORM?

The Sharable Content Object Reference Model (SCORM) defines a Web-based learning "Content Aggregation Model" and "Run-time Environment" for learning objects. At its simplest, it is a model that references a set of interrelated technical specifications and guidelines designed to meet the following high-level requirements for Web-based learning content:

  • Content reusability: SCORM tutorials are aggregations of "Sharable Content Object's" (SCO). A SCO is a single web page or a sequence of web pages containing learning content. SCORM enables the integration of existing SCO's into new tutorials.
  • Accessibility: SCORM tutorials are accessible over the web. To run a tutorial the end user needs to have a Browser supporting ECMAScript 1.0 (aka JavaScript 1.0) and frames. Information about the tutorial is available through metadata. All metadate is stored in XML documents.
  • Durability: SCORM is based on open Internet standards like HTML, ECMAScript and HTML.
  • Interoperability: Interoperability is specified for the metadata, and for the API of SCO's and the runtime environment.

SCORM was developed by the Advanced Distributed Learning Initiative (ADL). See www.adlnet.org for more information about SCORM.

Known Issues

TinyLMS does not pass the SCORM RTE-1 self-test because of its limited persistence capabilities. During a user session, TinyLMS uses an in-memory database for all data entries. Long term persistence is achieved using Cookies. Unfortunately Cookies do not provide enough space to store all data entries.
If a course consists of exactly one SCO, TinyLMS is capable of storing the cmi.core.lesson_status and the cmi.core.lesson_location. If a course contains more than one SCO, TinyLMS stores the cmi.core.lesson_status only.

System requirements

TinyLMS consists of two parts: the course builder and the runtime environment.

To run the course builder you need to have Java 1.5 (or above) on your computer.
The course builder is known to run on Mac OS X and on Windows. It is supposed to run on many other operating systems as well. Including Linux, Solaris, AIX and OS/2.

To runtime environment needs a browser supporting HTML, JavaScript and Cookies. There is no need for a server software. Thus tutorials generated with TinyLMS can be sent as a Mail attachmen, or can be run from CD ROM or any other read only media.

The runtime environment is known to run with recent versions of Internet Explorer and Safari on Mac OS X and on Windows. The run time environment is supposed to run with many different browsers and on many other operating systems as well.


Mac OS X 10.3 (Panther)

  1. Download your platform edition of TinyLMS.
    Download from http://www.randelshofer.ch/tinylms/download.html
  2. There is no step No 2 :). TinyLMS unpacks automatically and is ready for immediate use. If you like, you can move it into your Application folder.

All Other Operating Systems

  1. Install a recent version of Java on your computer.
    Download from http://www.java.com
  2. Download your platform edition of TinyLMS.
    Download from http://www.randelshofer.ch/tinylms
  3. Unzip the ZIP-file and then double click TinyLMS.jar to run the application.


TinyLMS Copyright (C) 2003-2008
Werner Randelshofer, Hausmatt 10, CH-6405 Immensee, Switzerland
All Rights Reserved


  • Sasa Divjak, Slovenian language version and Slovenian course builder interface
  • Jean Pierre Vandecandelaere, Dutch language version and Dutch course builder interface

Third-party libraries: