Tag | Class | In Unit? | Default On? (Proposed) | Category (Proposed) | Description | Notes |
---|
acid | acid.acid.AcidBlock
| NO | -- | -- | Technically a component, and technically could go into a Unit, but it has no pedagogical value–it exists only to test XBlock functionality. | |
acid_parent | acid.acid.AcidParentBlock
| NO | -- | -- | Exists only to test XBlock container functionality. | |
annotatable | xmodule.annotatable_block.AnnotatableBlock
| YES | No | Advanced | In an annotation problem, you highlight specific text inside a larger text block and then ask questions about that text. The questions appear when learners move their cursors over the highlighted text. The questions also appear in a section below the text block, along with space for learners’ responses. | No editor. |
book | xmodule.template_block.TranslateCustomTagBlock
| | -- | -- | | |
chapter | xmodule.seq_block.SectionBlock
| NO | -- | -- | This is a Section. | |
conditional | xmodule.conditional_block.ConditionalBlock
| YES | Yes (if UI) No
| Advanced | Intended to gate access to some piece of content through some code-level conditions, e.g. “they attempted this other problem first”. | There’s a GUI here, but it seems half-baked. I think it would need more work before we turn it on by default. |
course | xmodule.course_block.CourseBlock
| NO | -- | -- | This is the root of a Course. Also where all the advanced settings live. | |
course_info | xmodule.html_block.CourseInfoBlock
| NO | -- | -- | This is what goes in the “About the Course” blurb if you’re using edx-platform’s built-in enrollment/marketing views. | |
crowdsourcehinter | crowdsourcehinter.crowdsourcehinter.CrowdsourceHinter
https://github.com/openedx/crowdsourcehinter/blob/master/crowdsourcehinter/crowdsourcehinter.py | YES | No | Advanced | The Crowdsource Hinter serves to provide students with hints when they incorrectly answer a problem within a course. The hinter is compatible with numerical input and text input type problems. | No editor. Prototype. Will not scale to large classes. |
custom_tag_template | xmodule.template_block.CustomTagTemplateBlock
| | -- | | | |
customtag | xmodule.template_block.CustomTagBlock
| | -- | | | |
discuss | xmodule.template_block.TranslateCustomTagBlock
| | -- | | | |
discussion | xmodule.discussion_block.DiscussionXBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/discussion_block.py | YES | No | Advanced | Inline discussion block. I can’t find an explicit DEPR for this, but this component has largely been sidelined in favor of marking the Unit discussable and putting those discussions in the right-hand context panel. | We’re moving away from this. |
done | done.done.DoneXBlock
https://github.com/openedx/DoneXBlock/blob/master/done/done.py | YES | No | Advanced | This is titled “Completion” in the UI. A simple way to let students mark and track that they’ve completed something, but it doesn’t actually interact with our completion API (i.e. the thing that marks a Unit “complete” and gives you a check mark). (Dave’s opinion): I think we should eventually fold this into the Unit itself, like how we did for discussions. The heuristics we use to estimate completion in the Completion API are not always reliable, and run into edge cases that it can’t really handle gracefully. We can keep the heuristics, but I’d like to have an override where someone can say, “Yeah, I did this. Really. Now let’s move on.” | |
drag-and-drop-v2 | drag_and_drop_v2.drag_and_drop_v2.DragAndDropBlock
https://github.com/openedx/xblock-drag-and-drop-v2/blob/master/drag_and_drop_v2/drag_and_drop_v2.py | YES | Yes | Common | Our supported Drag and Drop component. | On by default. |
edx_sga | edx_sga.sga.StaffGradedAssignmentXBlock
https://github.com/mitodl/edx-sga/blob/master/edx_sga/sga.py | YES | Yes | | Staff Graded Assessment, maintained by MIT ODL. | |
error | xmodule.error_block.ErrorBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/error_block.py | NO | -- | | This is what the LMS renders when something goes wrong while trying to render other XBlock types. | |
google-calendar | google_drive.google_calendar.GoogleCalendarBlock
https://github.com/openedx/xblock-google-drive/blob/master/google_drive/google_calendar.py | YES | Yes | Advanced | Iframes a specified Google Calendar. Workaround from the time before Dates tab existed. Any usefulness it has in a course likely points to areas where the Dates tab needs to be improved. | |
google-document | google_drive.google_docs.GoogleDocumentBlock
https://github.com/openedx/xblock-google-drive/blob/master/google_drive/google_docs.py | YES | Yes | Advanced | Works for any Google Drive document, not just word processing–so slides can show up here, for instance. Also works via iframe embed. | |
hidden | xmodule.hidden_block.HiddenBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/hidden_block.py | NO | -- | | This is what the system uses when it can’t find an XBlock class to match a given tag in the data. Usually this happens because you’ve imported a course into a new site that doesn’t have that particular XBlock installed. | |
html | xmodule.html_block.HtmlBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/html_block.py | YES | Yes | Common | This is the component created when you create a new “Text” component. Already on by default. | |
image | xmodule.template_block.TranslateCustomTagBlock
| | -- | | | |
library | xmodule.library_root_xblock.LibraryRoot
https://github.com/openedx/edx-platform/blob/master/xmodule/library_root_xblock.py | NO | -- | | This is the root XBlock for a ModuleStore-based (v1) Content Library. | |
library_content | xmodule.library_content_block.LibraryContentBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/library_content_block.py | YES | Yes | Common | XBlock used for adding library content to a course. | |
lti | xmodule.lti_block.LTIBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/lti_block.py | YES | No | -- | Our unsupported LTI XBlock. | |
lti_consumer | lti_consumer.lti_xblock.LtiConsumerXBlock
https://github.com/openedx/xblock-lti-consumer/blob/master/lti_consumer/lti_xblock.py | YES | Yes | Common | Our supported LTI XBlock. I believe there are still one or two things that the old version does that this one doesn’t support, which is part of why we haven’t managed to kill the old one yet. | |
openassessment | openassessment.xblock.openassessmentblock.OpenAssessmentBlock
https://github.com/openedx/edx-ora2/blob/master/openassessment/xblock/openassessmentblock.py | YES | Yes | Common | Open Response Assessment, i.e. self/peer/staff grading of short essay responses. One of the most complex XBlocks. | On by default. |
poll | poll.poll.PollBlock
https://github.com/open-craft/xblock-poll/blob/master/poll/poll.py | YES | Yes | Advanced | Supported Polling XBlock. | |
poll_question | xmodule.poll_block.PollBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/poll_block.py | YES | No | -- | Unsupported Polling XBlock. | No editor. |
problem | xmodule.capa_block.ProblemBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/capa_block.py | YES | Yes | Common | The most important assessment type with a variety of advanced input and response types ranging from multiple choice to schematic editors. | On by default. |
randomize | xmodule.randomize_block.RandomizeBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/randomize_block.py | YES | ? | Advanced | Selects exactly one child item to display to a given student. | Has GUI |
recommender | recommender.recommender.RecommenderXBlock
https://github.com/openedx/RecommenderXBlock/blob/master/recommender/recommender.py | YES | No | Advanced | The recommender provides learners with a list of online resources related to the course content. These resources are jointly managed by course team members and the learners. | Not supported. Scaling concerns. Not very polished. |
scorm | openedxscorm.scormxblock.ScormXBlock
| YES | Yes | Advanced | Needs a license to be enabled, might not be possible to default on | |
sequential | xmodule.seq_block.SequenceBlock
| NO | -- | | This is a Subsection. | |
slides | xmodule.template_block.TranslateCustomTagBlock
| -- | -- | | | |
split_test | xmodule.split_test_block.SplitTestBlock
| YES | Yes | Advanced | This is a Content Experiment to show different groups of people different content. It works by essentially making two mini-units inside the main Unit. | |
staffgradedxblock | staff_graded.staff_graded.StaffGradedXBlock
https://github.com/openedx/staff_graded-xblock/blob/master/staff_graded/staff_graded.py | YES | No | Advanced | Pre-cursor to edx_sga , allowed staff to set points for submissions manually. | |
static_tab | xmodule.html_block.StaticTabBlock
| NO | -- | -- | This lets you put HTML as a custom tab in the courseware, alongside things like Dates and Progress. | |
survey | poll.poll.SurveyBlock
https://github.com/open-craft/xblock-poll/blob/master/poll/poll.py | YES | Yes | Advanced | A more sophisticated polling, and lives in the same repo as the PollBlock . | |
unit | xmodule.unit_block.UnitBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/unit_block.py | NO | -- | | Similar to Vertical in principle, but intended to be simpler and better decoupled from the LMS (VerticalBlock currently does a lot of work that it probably shouldn’t). | |
vertical | xmodule.vertical_block.VerticalBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/vertical_block.py | NO | -- | | Representation of a Unit in a Course. | |
video | xmodule.video_block.video_block.VideoBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/video_block/video_block.py | YES | Yes | Common | Videos. | On by default. |
videoalpha | xmodule.video_block.video_block.VideoBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/video_block/video_block.py | YES* | -- | -- | Just an alias for the normal video tag. The backstory on this is that the VideoAlpha XBlock was created to add some new features that the VideoModule didn’t have, like HTML5 video playback. That code was eventually merged into the VideoModule, which eventually became VideoBlock. This alias was maintained so that those few courses that did use videoalpha wouldn’t be broken. This alias costs basically nothing to maintain since the attributes were designed to be fully compatible. But there’s no good reason to ever use it on new content. | |
videodev | xmodule.template_block.TranslateCustomTagBlock
| -- | -- | | | |
word_cloud | xmodule.word_cloud_block.WordCloudBlock
https://github.com/openedx/edx-platform/blob/master/xmodule/word |