Extending edX Platform
This table summarizes the types of extensions that are currently supported by the edX Platform:
Extension Type | Description | Current Support |
---|---|---|
Courseware component types | Use XBlocks to create new types of components that can be included in a course. | XBlocks documentation |
External graders | Host an external grader separately from the edX platform. | External Graders |
LTI applications | Add external learning applications or digital textbooks. | Open edX LTI documentation |
Custom problem types | Add a new type of problem by including custom JavaScript. | Custom JavaScript Applications |
LMS course tabs | Shows a new tab to the user when they are viewing a course. | Adding a new course tab |
Studio/LMS page | Add a new page to Studio or the LMS. Note that this currently requires making changes directly into the edX platform. | How to add a new page to LMS or Studio |
User partition schemes | Add a new scheme that will partition users into one of a set of groups. | /wiki/spaces/PT/pages/11927648 |
Useful links
- There is more detail in the edX Developer's Guide: Options for Extending the edX Platform.
- Web Fragments describes how to build pluggable user interfaces.
- Feature Plugins for edX Platform describes how the platform could be extended to support feature plugins.
- How to add a new feature to LMS or Studio describes the steps necessary to implement a new feature as a separate Django app.
- How to add a new plugin entry point to edX platform describes how to go about providing a new type of plugin.