Picture of jPablo Caballero
Re: Implementing an xAPI extension
by jPablo Caballero - Monday, 30 November 2015, 9:49 AM

I wrote a new extension, related to this...

I had an itch for a tracking extension that could give me some flexibility to track what's going on as a learner uses a course, but not necessarily using xAPI. However, at a wider level, I was interested in xAPI too, and this forum conversation about xAPI was starting to take place.

At the same time, I wanted to learn about Adapt development, so I spent time studying adapt-tincan and adapt-contrib-Spoor, until I understood to some extent how these things work.⋅

So, long story short, one thing led to another, and I've ended up implementing what I think is a fairly flexible and "extensible" tracking extension, that does xAPI, but allows other tracking scenarios as well. It's here, in case anyone wants to take a look:


I wrote a fairly detailed Readme to try to explain my reasoning behind what's been done and how it's been done...

As I said, this kind of happened at the same time that the xAPI conversation emerged, and then the adapt-tincan extension was released. But I needed some time to organize my thoughts around xAPI and tracking in general -I had no idea if I'd be able to develop anything. Needless to say that studying what others have done in adapt-tincan and Spoor has been instrumental for what I ended up doing.

However, this is my first attempt to develop something in the Adapt "ecosystem" and stack,... so I may have done things that are weird, or just plain wrong... I don't know!

As for SCORM... I particularly don't see a need for xAPI and SCORM to go together... to me they're different things. And SCORM is very widely used and way too important be "messed with", but that's just my opinion.

Any feeback or comments are welcome.