Open edX consists of multiple components. The main ones are:
LMS (Learning Management System): Students’ View
This is the part of Open edX that students interact with. It displays content and runs quizzes and interactive apps. The LMS provides user registration, progress tracking, grading, and forums. Data storage: courses are saved in MongoDB and student data in MySQL.
The LMS also provides instructor dashboards.
Studio course authoring tool or CMS (Content Management System): Authors’ View
EdX Studio presents a friendly graphical user interface. You can upload and arrange lectures into logical units, post course materials, create quizzes and assessments, etc.
Note that if you wish to use Hangouts you may need to ask Google for permission and to whitelabel your website. You can do so through Google’s developer site by accessing the “Instant Google hangouts” feature.
Like the LMS, Studio stores its content in MongoDB and MySQL.
CS Comments Service
A server-side Ruby application that supports voting, nested comments and instructors’ endorsements.
A course is made of XBlock learning components, which can be created by third parties to extend Open edX’s functionality.
Other optional components of Open edX are:
Defines an interface for the LMS to communicate with external checker services. For example, when a student submits a problem in the LMS, it is sent to XQueue in order for it to be processed.
XServer accepts student code submissions from the LMS and runs the code using courseware graders.
EASE (Enhanced AI Scoring Engine)
A library that allows for machine learning-based classification of textual content, scoring student essays, etc.
Sends daily digests of new content to users who are subscribed to a given forum.
This is the analytics software designed to deliver data using visualizations, key metrics and tables, in order to learn who your students are and what they do while they interact with your course. It provides data pertaining to student enrollment activity, geographic location and engagement with course content.
These are the relevant repositories:
This diagram below displays Open edX’s components. Please click on the picture to enlarge it.
Every day we see more functionalities being added to the Open edX software. The features listed above are just the beginning. To learn about the product roadmap ahead, check out the new Open edX community portal.