xapijs / xapi

Communicate over xAPI using JavaScript.
https://www.xapijs.dev/xapi-wrapper-library
MIT License
40 stars 20 forks source link

Moodle exemple #393

Open Utopiah opened 1 week ago

Utopiah commented 1 week ago

Moodle supported xAPI, cf https://moodledev.io/docs/4.4/apis/subsystems/xapi and is a relatively popular open-source LMS.

I understand that the goal of the library is to be applicable to any LMS, or even beyond that any backend that implements and expose xAPI. Yet, I believe it could be helpful for discovery by developers to provide examples for popular LMS implementations. In order not to bias such examples it could also be interesting to give examples to alternatives, e.g SenseiLMS (even though for now https://github.com/Automattic/sensei/issues/357 they don't seem to support xAPI in core at least) or rather https://github.com/LearningLocker/learninglocker but as LRS rather than LMS.

Utopiah commented 1 week ago

My bad, seems Moodle is native only, no more Web based, so probably not a great example of inclusivity. Maybe better to find a proper entire suite (with containers) for better DevEx.

Details :

Utopiah commented 1 week ago

My bad... with excitement and naivete I clicked on the search engine first result which lead to https://moodledev.io/general/app/development/setup/docker-images which is for the client app, not the backend. That makes a lot more sense now. Consequently I still believe a Moodle example would be useful. Apologies, re-opening.

Utopiah commented 1 week ago

Could possibly rely on https://github.com/moodlehq/moodle-docker?tab=readme-ov-file#quick-start-with-gitpod got an end-to-end testing environment.

CookieCookson commented 1 week ago

Hi @Utopiah, thanks for your query.

Are you asking for a basic example of how a piece of learning content that is uploaded to Moodle can communicate with it via xAPI? I'm not familiar with the implementation(s) of xAPI within Moodle, is it trying to act like any other conformant LMS or is it configured in a specialised way that needs xAPI call structures to be explicitly designed for it? It looks like there are broad use-cases in Moodle e.g. creating a plugin/application that can leverage xAPI to read/write data for the learner in a non traditional e-learning capacity. It also doesn't look like it supports standard xAPI e-learning module tracking out of the box, some additional plugins may be required and some specific configuration required in the learning content for compatibility.

Do you have an example of your use case of how you would like to leverage this library with Moodle? That should help narrow down if its possible and see if there are any nuances to the implementation.