Custom digital learning experiences which track and award certifications

Kim T
Creative Technology Concepts & Code
4 min readDec 30, 2019


Students prefer seamless online/offline learning experiences

As online/offline experiences have become more seamless, there is a desire to improve interactive learning experiences for students. Current off-the-shelf learning solutions have many limitations, whilst best-in-class solutions are often completely custom.

Here I’m going to explore the digital learning landscape and walk through some of the approaches I’ve used to create more custom experiences. First off, we need to clarify some definitions.

Components of Learning Management Systems

What are Learning Management Systems?

Learning management systems (LMS for short) are software for the administration, documentation, tracking, reporting and delivery of educational content. The closest real-world example of an LMS would be an examiner who marks your answers, tracks your scores and awards you your grades. Advantages of using an LMS over a real world solution are:

  • Always online and available, allowing students to learn whatever their schedule.
  • Scales quickly allowing potentially unlimited students and courses
  • Collects and surfaces insights, helping you understand how students and courses are performing
  • Assign pathways, enabling ongoing learning based on career goals
Intellum is a Learning Management System (LMS)

Here you can view a comparison of leading Learning Management Platforms.

Components of Content Authoring Tools

What are Content Authoring Tools?

Content authoring tools are software to create and package interactive educational content quickly, without relying on specialists, these interactive courses can be embedded on the web and/or inside an LMS. A real world example of a content authoring tool would be a lesson template, which allows teachers to create lessons quickly by selecting and customizing parts of the lesson they want to use. Advantages of using content authoring tools are:

  • Create more engaging content such as quizzes and assignments
  • Tools to import, modify, and version different types of content
  • Reuse templates to speed up workflows
  • Update course content and republish quickly without relying on others
Evolve is a Content Authoring Tool

Here you can view a comparison of leading Content Authoring Platforms.

Limitations of off-the-shelf solutions

DuoLingo has a unique, custom learning experience.

Once you have selected an LMS and start creating courses, you begin to reach limitations as to the types of experience you can create. Many templates are similar linear journeys with a few variations in layouts. When we compare those to best-in-class learning apps like DuoLingo we start to see that custom apps have more flexibility in design and experience. How can we get the best of both worlds?

SCORM, the standard you didn’t know that you needed.

SCORM is a standard API for education communication

Shareable Content Object Reference Model (SCORM) is a standard which defines API calls and format of data passed between Learning Management Systems and the course content embedded within them. In most cases this is an XML file in the folder alongside a JavaScript iFrame API which calls the parent to tell the LMS when users are starting and completing courses.

In theory, you can create any type of web experience you like as long as you utilize SCORM to update the relevant learning goals. Amazing!

How do you integrate SCORM into a web app?

  1. Add an imsmanifest.xml at the root of the site containing the metadata for your course. (Vanilla / Angular)
  2. Add a SCORM supported JavaScript API (Vanilla / Angular)
  3. Trigger SCORM API based on user interactions (Vanilla / Angular)
  4. Package your build as a zip file (Vanilla / Angular)
  5. Upload zip file to LMS and test!


You can use the official samples along with my two simplified examples to get started:



Kim T
Creative Technology Concepts & Code

Creative Technologist, coder, music producer, and bike fanatic. I find creative uses for technology.