Virtually any workflow or integration can be built into Open edX since it is open source, well architected and thoroughly documented. We have categorized developments into the following areas, but please let us know if what you have in mind differs.
LTI (Learning Tools Interoperability)
In terms of complexity, LTI components provide the simplest mechanism to extend Open edX. As specified by the IMS Global Learning Consortium, they provide interoperability between consumers and providers to manage user credentials, problems and other data pertaining to an online course.
All of the existing LTI 1.1.1 components can be easily integrated into the platform without any extra code. If none meet your criteria or you want to perform an integration with a currently unsupported service, however, then we can perform this development.
XBlocks provide a modular way to extend Open edX through its Python-based backend and web-facing frontend. As edX states, “they maintain state in a storage layer, render themselves through views, and process user actions through handlers”. For an example, see the “Google Drive and Calendar” XBlock.
These have been used to implement customized grading workflows, fetch data from external APIs and many more functionalities. As with LTI, our team can provide you with the guidance to integrate the XBlocks that fit your needs or implement yours from scratch.
Core and APIs
Extensions that require modifications of Open edX’s databases or certain aspects of students’ or instructors’ workflows cannot be implemented with modular LTI components or XBlocks. For example, subscription service that automatically enrolls students into certain courses or modified interoperability between edX and its mobile application would fall in this category.
Integrations with external REST APIs for messaging, marketing, etc. are also a possibility. Likewise, Open edX’s APIs can be extended beyond their existing functionality to create the interoperability that your organization needs.