Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ OEX_INTRO_COURSE=Intro\ To\ Open\ edX\ Course
OEX_INTRO_COURSE_TAR=dist/$(OEX_INTRO_COURSE).tar.gz
DEV_INTRO_COURSE=Open\ edX\ Developer\ Onboarding
DEV_INTRO_COURSE_TAR=dist/$(DEV_INTRO_COURSE).tar.gz
OLX_EXAMPLE_COURSE=olx_example_course
OLX_EXAMPLE_COURSE_TAR=dist/olx_example_course.tar.gz

help: ## Display this help message.
@echo "Please use \`make <target>' where <target> is one of"
Expand All @@ -20,6 +22,7 @@ dist: clean ## Create/overwrite exports in ./dist/ folder for courses
cd $(CC_COURSE) && tar czfv ../$(CC_COURSE_TAR) ./course/
cd $(OEX_INTRO_COURSE) && tar czfv ../$(OEX_INTRO_COURSE_TAR) ./course/
cd $(DEV_INTRO_COURSE) && tar czfv ../$(DEV_INTRO_COURSE_TAR) ./course/
cd $(OLX_EXAMPLE_COURSE) && tar czfv ../$(OLX_EXAMPLE_COURSE_TAR) ./course/

gitclean: ## Remove hidden system files that are ignored by git.
git clean -dfX
Expand All @@ -28,3 +31,4 @@ unpack: ## Unpack course exports from ./dist/ folder into source OLX.
[ -f $(CC_COURSE_TAR) ] && mkdir -p $(CC_COURSE) && (cd $(CC_COURSE) && tar xzfv ../$(CC_COURSE_TAR)) || echo "No course to unpack."
[ -f $(OEX_INTRO_COURSE_TAR) ] && mkdir -p $(OEX_INTRO_COURSE) && (cd $(OEX_INTRO_COURSE) && tar xzfv ../$(OEX_INTRO_COURSE_TAR)) || echo "No course to unpack."
[ -f $(DEV_INTRO_COURSE_TAR) ] && mkdir -p $(DEV_INTRO_COURSE) && (cd $(DEV_INTRO_COURSE) && tar xzfv ../$(DEV_INTRO_COURSE_TAR)) || echo "No course to unpack."
[ -f $(OLX_EXAMPLE_COURSE_TAR) ] && mkdir -p $(OLX_EXAMPLE_COURSE) && (cd $(OLX_EXAMPLE_COURSE) && tar xzfv ../$(OLX_EXAMPLE_COURSE_TAR)) || echo "No course to unpack."
4 changes: 4 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,10 @@ This repository contains courses that you can import into your Open edX instance
-
- `<./dist/olx-example.tar.gz>`_
- `<./olx-example>`_
* *OLX example course*
- ``course-v1:OpenedX+OLXex+2025``
- `<./dist/OLX-example-course.tar.gz>`_
- `<./OLX-example-course>`_
* - *Core Contributor Onboarding Course*
- ``course-v1:OpenedX+NewCC+2024``
- `<./dist/Core\ Contributor\ Onboarding.tar.gz>`_
Expand Down
Binary file added dist/OLX-example-course.tar.gz
Binary file not shown.
Binary file added dist/olx_example_course.tar.gz
Binary file not shown.
10 changes: 10 additions & 0 deletions olx_example_course/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
OLX Example Course
==================================

This is the OLX example course described in the `OLX documentation <https://docs.openedx.org/en/latest/educators/olx/front_matter/read_me.html>`_.
It contains all the course content in an unzipped view. You can use it to:

* Inspect the OLX code
* Reviews the assets in the course

It should not be used to import into your Open edX instance. Use the ``tar.gz`` file in the top-level ``dist`` directory.
46 changes: 46 additions & 0 deletions olx_example_course/course/about/overview.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
<section class="about">
<h2>About This Course</h2>
<div>
<section id="xml-resources" style="box-sizing: border-box;">
<p>What is Open Learning XML?</p>
<p>OLX (open learning XML) is the XML-based standard used to build courses for the Open<span style="font-size: 1em;"> edX Platform.</span></p>
<p>With OLX, you can:</p>
<p>Move content between instances of Open edX.</p>
<p>Create course content outside of Open edX Studio, including by conversion from other content formats.</p>
<p>Ensure content remains free of proprietary encoding and allow portability.</p>
</section>
</div>
</section>
<section class="prerequisites">
<h2>Requirements</h2>
<p>OLX is based on XML. XML, or Extensible Markup Language, is a set of rules for creating documents in a format that is both human-readable and machine- readable.</p>
<p>To work with OLX, you should have a strong understanding of XML. This course presumes you understand XML and can use tools to create and edit XML files.</p>
</section>
<section class="course-staff">
<h2>Course Staff</h2>
<article class="teacher">
<div class="teacher-image"><img src="/asset-v1:OpenedX+OLXex+2025+type@asset+block@curly_headshot.png" align="left" style="margin: 0 20 px 0;" alt="Sarina Canelake image" /></div>
<h3>Sarina Canelake</h3>
<p>Sarina has been working on the Open edX project since 2012. She is the administrator of the Core Contributor program and the Engineering Manager of the Axim Engineering Team. Based in Boston, Massachusetts, USA, you can usually find her grilling, watching Deep Space 9, setting up elaborate Christmas light displays, or playing with her cats: Rupert, Arthur, and Ashley.</p>
</article>
<section class="faq">
<section class="responses">
<h2>Frequently Asked Questions</h2>
<article class="response">
<h3>What web browser should I use?</h3>
<p>The Open edX platform works best with current versions of Chrome, Edge, Firefox, or Safari.</p>
<p>See our <a href="https://docs.openedx.org/en/latest/developers/references/developer_guide/testing/browsers.html">list of supported browsers</a> for the most up-to-date information.</p>
<article class="response">
<h3>Can I reuse parts of this course?</h3>
<p>Yes, you are welcome to reuse parts of this course, but you will have to check the license and provide the correct attribution. </p>
<p>All content is made available under a Creative Commons BY-NC-SA 3.0 US License &lt;<a href="http://creativecommons.org/licenses/by-nc-sa/3.0/us/" alt="BY-NC-SA License" target="_blank" rel="noopener">http://creativecommons.org/licenses/by-nc-sa/3.0/us/</a>&gt;.</p>
<p>All code is made available under an AGPLv3 License.</p>
</article>
<p>You can find more frequently asked questions and their answers on the <a href="https://openedx.org/faq/" target="_blank" rel="noopener">Open edX® FAQ page</a>.</p>
</article>
<article class="response">
<p></p>
</article>
</section>
</section>
</section>
1 change: 1 addition & 0 deletions olx_example_course/course/about/short_description.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
OLX (open learning XML) is the XML-based standard used to build courses for the Open edX Platform.
1 change: 1 addition & 0 deletions olx_example_course/course/assets/assets.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<assets/>
4 changes: 4 additions & 0 deletions olx_example_course/course/chapter/section_1_homework.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<chapter display_name="Course Section 1: Homework">
<sequential url_name="subsection_1_ungraded"/>
<sequential url_name="subsection_2_graded_as_homework"/>
</chapter>
4 changes: 4 additions & 0 deletions olx_example_course/course/chapter/section_2_exams.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<chapter display_name="Course Section 2: Exams">
<sequential url_name="subsection_1_midterm_exam"/>
<sequential url_name="subsection_2_final_exam"/>
</chapter>
1 change: 1 addition & 0 deletions olx_example_course/course/course.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<course url_name="2025" org="OpenedX" course="OLXex"/>
5 changes: 5 additions & 0 deletions olx_example_course/course/course/2025.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<course advanced_modules="[&quot;edx_sga&quot;, &quot;lti&quot;, &quot;scorm&quot;, &quot;poll&quot;, &quot;survey&quot;]" cert_html_view_enabled="true" certificates_display_behavior="CertificatesDisplayBehaviors.END" course_image="Intro_to_OLX_course_card.png" discussions_settings="{&quot;enable_in_context&quot;: true, &quot;enable_graded_units&quot;: false, &quot;unit_level_visibility&quot;: true, &quot;provider_type&quot;: &quot;openedx&quot;}" display_name="OLX Example Course" end="2027-06-01T00:00:00Z" enrollment_end="2026-01-31T00:00:00Z" enrollment_start="2025-05-01T00:00:00Z" graceperiod="7200 seconds" instructor_info="{&quot;instructors&quot;: []}" language="en" learning_info="[]" lti_passports="[&quot;codeboard:codeboard_key_1:codeboard_secret_1234&quot;, &quot;jupyter:811a447706c152588c436ee13addeeb889e7f256033679408737bd5bc4118225:869e9639af7de74929b13ae17ad22e4efb60d9d112143e287589289102e1de00&quot;]" minimum_grade_credit="0.8" pdf_textbooks="[{&quot;tab_title&quot;: &quot;Education for a Digital World: Advice, Guidelines and Effective Practice from Around Globe&quot;, &quot;chapters&quot;: [{&quot;title&quot;: &quot;Full Book&quot;, &quot;url&quot;: &quot;/asset-v1:OpenedX+OLXex+2025+type@asset+block@Education_for_a_Digital_World.pdf&quot;}], &quot;id&quot;: &quot;6Education_for_a_Digital_World&quot;}]" start="2025-06-01T00:00:00Z">
<chapter url_name="section_1_homework"/>
<chapter url_name="section_2_exams"/>
<wiki slug="OpenedX.OLXex.2025"/>
</course>
2 changes: 2 additions & 0 deletions olx_example_course/course/html/lti_introduction.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<p style="font-size: 16px;"><strong class="blue-text">LTI</strong>, or <strong class="blue-text">Learning Tools Interoperability, </strong>allows you to establish a secure connection between your LMS and another tool, allowing your learners to securely transfer the data necessary to complete an activity in an external learning tool without having to register. This also allows you to pass grades and other data between the two tools, making it invaluable for technical integrations. LTI is a standard across the learning industry and requires that the tool being used provides support for this type of connection, but this provides access to a huge number of potential learning tools available for your courses.</p>
<p style="font-size: 16px;">As of December 2023, the Open edX platform supports LTI 1.1 and LTI 1.3.</p>
1 change: 1 addition & 0 deletions olx_example_course/course/html/lti_introduction.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<html filename="lti_introduction" display_name="LTI Introduction"/>
2 changes: 2 additions & 0 deletions olx_example_course/course/html/olx_resources.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<p>The Open edX Documentation Site, docs.openedx.org, holds documentation for educators, learners, and all other types of Open edX users.</p>
<p><a href="https://docs.openedx.org/en/latest/educators/navigation/olx.html" target="_blank" rel="noopener">OLX Documentation</a> is written specifically with course authors in mind.</p>
1 change: 1 addition & 0 deletions olx_example_course/course/html/olx_resources.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<html filename="olx_resources" display_name="OLX Resources"/>
8 changes: 8 additions & 0 deletions olx_example_course/course/html/what_is_olx.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<p><span style="font-size: 1em;">OLX (open learning XML) is the XML-based standard used to build courses for the Open edX Platform.</span></p>
<p><span style="font-size: 1em;">With OLX, you can:</span></p>
<ul>
<li>Move content between Open edX instances.</li>
<li>Create course content outside of Open edX Studio, including by conversion from other content formats.</li>
<li>Ensure content remains free of proprietary encoding and allow portability.</li>
</ul>
<p></p>
1 change: 1 addition & 0 deletions olx_example_course/course/html/what_is_olx.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<html filename="what_is_olx" display_name="What is OLX?"/>
3 changes: 3 additions & 0 deletions olx_example_course/course/html/what_is_xml.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<p style="margin-top: 20px; font-size: 16px;">OLX is based on XML. XML, or Extensible Markup Language, is a set of rules for creating documents in a format that is both human-readable and machine- readable.</p>
<p style="font-size: 16px;">To work with OLX, you should have a strong understanding of XML. This document presumes you understand XML and can use tools to create and edit XML files.</p>
<p>For a primer on XML, see the <a href="http://en.wikipedia.org/wiki/XML" target="_blank" rel="noopener">Wikipedia XML entry</a>.</p>
1 change: 1 addition & 0 deletions olx_example_course/course/html/what_is_xml.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<html filename="what_is_xml" display_name="What is XML?"/>
1 change: 1 addition & 0 deletions olx_example_course/course/info/updates.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<ol></ol>
28 changes: 28 additions & 0 deletions olx_example_course/course/policies/2025/grading_policy.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"GRADER": [
{
"drop_count": 2,
"min_count": 1,
"short_label": "HW",
"type": "Homework",
"weight": 0.3
},
{
"drop_count": 0,
"min_count": 1,
"short_label": "Midterm",
"type": "Midterm Exam",
"weight": 0.3
},
{
"drop_count": 0,
"min_count": 1,
"short_label": "Final",
"type": "Final Exam",
"weight": 0.4
}
],
"GRADE_CUTOFFS": {
"Pass": 0.41
}
}
97 changes: 97 additions & 0 deletions olx_example_course/course/policies/2025/policy.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
{
"course/2025": {
"advanced_modules": [
"edx_sga",
"lti",
"scorm",
"poll",
"survey"
],
"cert_html_view_enabled": true,
"certificates_display_behavior": "CertificatesDisplayBehaviors.END",
"course_image": "Intro_to_OLX_course_card.png",
"discussion_topics": {
"General": {
"id": "course"
}
},
"discussions_settings": {
"enable_graded_units": false,
"enable_in_context": true,
"provider_type": "openedx",
"unit_level_visibility": true
},
"display_name": "OLX Example Course",
"end": "2027-06-01T00:00:00Z",
"enrollment_end": "2026-01-31T00:00:00Z",
"enrollment_start": "2025-05-01T00:00:00Z",
"graceperiod": "7200 seconds",
"instructor_info": {
"instructors": []
},
"language": "en",
"learning_info": [],
"lti_passports": [
"codeboard:codeboard_key_1:codeboard_secret_1234",
"jupyter:811a447706c152588c436ee13addeeb889e7f256033679408737bd5bc4118225:869e9639af7de74929b13ae17ad22e4efb60d9d112143e287589289102e1de00"
],
"minimum_grade_credit": 0.8,
"pdf_textbooks": [
{
"chapters": [
{
"title": "Full Book",
"url": "/asset-v1:OpenedX+OLXex+2025+type@asset+block@Education_for_a_Digital_World.pdf"
}
],
"id": "6Education_for_a_Digital_World",
"tab_title": "Education for a Digital World: Advice, Guidelines and Effective Practice from Around Globe"
}
],
"start": "2025-06-01T00:00:00Z",
"tabs": [
{
"course_staff_only": false,
"name": "Course",
"type": "courseware"
},
{
"course_staff_only": false,
"name": "Progress",
"type": "progress"
},
{
"course_staff_only": false,
"name": "Dates",
"type": "dates"
},
{
"course_staff_only": false,
"name": "Discussion",
"type": "discussion"
},
{
"course_staff_only": false,
"is_hidden": true,
"name": "Wiki",
"type": "wiki"
},
{
"course_staff_only": false,
"name": "Textbooks",
"type": "textbooks"
},
{
"course_staff_only": false,
"name": "Textbooks",
"type": "pdf_textbooks"
},
{
"course_staff_only": false,
"name": "HTML Custom Tab",
"type": "static_tab",
"url_slug": "html_custom_tab"
}
]
}
}
Loading