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
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
5 changes: 3 additions & 2 deletions source/community/release_notes/teak/teak_marketing_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -81,8 +81,9 @@ click!
Keep learners engaged with timely alerts about new posts and announcements,
delivered both in-platform and via email.

**Simplified LTI**: Tired of wrestling with LTI integrations? Set up credentials
once and reuse them across all your tools with our streamlined LTI 1.3 plugin.
**Reusable LTI configurations**: Set up LTI tool credentials once in a central store, then reuse
them across all courses and blocks, eliminating repetitive data entry and
reducing configuration errors across your entire instance.

**Beautiful Course Pages**: Your course catalog is getting a major glow-up! New,
customizable pages will help you showcase courses with modern design and full
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ Open edX Ulmo Release - Product Release Notes
ulmo_rp
ulmo_mobile_updates
ulmo_catalog
ulmo_reusable_lti
design_tokens
stay_up_to_date
ulmo_lti_cert
Expand Down
11 changes: 7 additions & 4 deletions source/community/release_notes/ulmo/ulmo_marketing_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,9 @@ for authors, learners, and site operators. Here's what's ready for you now:
everywhere — imagine updating your intro module across 20 courses with one
click!

**Simplified LTI**: Tired of wrestling with LTI integrations? Set up credentials
once and reuse them across all your tools with our streamlined LTI 1.3 plugin.
:ref:`Ulmo LTI`: Set up LTI tool credentials once in a central store, then reuse
them across all courses and blocks, eliminating repetitive data entry and
reducing configuration errors across your entire instance.

:ref:`LTI Certified ✅ <Ulmo LTI Certification>`: The Open edX Ulmo Release
has achieved the `LTI Advantage Complete
Expand Down Expand Up @@ -50,8 +51,10 @@ forward to:
**Instructor Dashboad Overhaul**: A beautiful, themeable Instructor Dashboard
with numerous usability improvements is coming your way.

**LTI Overhaul**: Even more LTI improvements to make course authoring and
LTI component reuse a breeze!
**Reliable, Repeatable LTI Units**: Configuration integrity when duplicating LTI
blocks and improved compatibility with Content Libraries, enabling reliable
block-level reusability and reducing the need for repeated configuration across
courses.


⌚ Ready to Upgrade?
Expand Down
76 changes: 76 additions & 0 deletions source/community/release_notes/ulmo/ulmo_reusable_lti.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
.. _Ulmo LTI:

Reusable LTI Configurations
###########################

Ulmo supports an important platform improvement: centralized, reusable LTI
configurations powered by the new LTI Store.

.. image:: /_images/release_notes/ulmo/reusable_lti_configuration.png
:alt: LTI component in editing mode, displaying the fields to be edited

This enhancement directly addresses a long-standing pain point: the repetitive,
error-prone process of entering LTI credentials (Client ID, Deployment ID, URLs,
keys, etc.) in every course and every LTI block. Now there's a cleaner, more
scalable way to manage these configurations across your instance.

Centralized LTI Store
*********************

Ulmo provides a reusable LTI store to centrally manage LTI tool credentials and
settings in Django Admin, which allows you to define LTI tool configurations
once, and reuse them anywhere across your Open edX instance.

.. note::

Site operators will need to install the `ltistore plugin
<https://github.com/openedx/openedx-tutor-plugins/tree/main/plugins/tutor-contrib-ltistore>`_
to enable the reusable LTI store.

Reusable LTI Configurations in Studio
*************************************

Course authors can now add LTI tools in Studio using the LTI Consumer component
configured to reference a "reusable configuration" rather than requiring
credentials per course block.

See :ref:`Set up an LTI Consumer with Reusable LTI Configuration` for further
documentation.

.. note::

In order to use the LTI Store, a site administrator will need to :ref:`Set up
a Reusable LTI Store`.

Future Improvements for LTI
***************************

Building on the foundation laid in Ulmo, the LTI experience will continue to
improve with both short-term fixes and longer-term UX enhancements. For the
Verawood release, we will focus on high-impact technical fixes, including
ensuring configuration integrity when duplicating LTI blocks and improving
compatibility with Content Libraries. These updates enable reliable block-level
reusability and reduce the need for repeated configuration across courses.

Beyond Verawood, work will shift toward the redesigned LTI Consumer UX and
expanded support for global configurations at the course, organization, and site
levels. Some other lower-priority enhancements remain under consideration as the
new UX and structural improvements mature.

.. seealso::

:ref:`About the LTI Component`

:ref:`Set up an LTI Consumer with Reusable LTI Configuration`

:ref:`Set up a Reusable LTI Store`

:ref:`Ulmo LTI Certification`

**Maintenance chart**

+--------------+-------------------------------+----------------+--------------------------------+
| Review Date | Working Group Reviewer | Release |Test situation |
+--------------+-------------------------------+----------------+--------------------------------+
| 2025-12-11 | LTI WG | Ulmo | Pass |
+--------------+-------------------------------+----------------+--------------------------------+
11 changes: 7 additions & 4 deletions source/site_ops/how-tos/setup_lti_store.rst
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,8 @@ Create a reusable LTI configuration

#. Add a new **External LTI Configuration**.

.. image:: /_images/educator_how_tos/add_lti_store_configuration.png
:alt: 'Add External LTI Configuration' button on Django Admin
.. image:: /_images/site_ops_how_tos/add_lti_store_configuration.png
:alt: 'Add External LTI Configuration' button on Django Admin

#. Enter the required fields:

Expand All @@ -103,12 +103,15 @@ Create a reusable LTI configuration

``["https://example.com/launch"]``

.. image:: /_images/educator_how_tos/create_ltistore_config.png
:alt: LTI store configuration fields in Django Admin
.. image:: /_images/site_ops_how_tos/create_ltistore_config.png
:alt: LTI store configuration fields in Django Admin

#. Save the configuration.
#. After saving, note the **Filter key** displayed on the External LTI Configurations screen (``/admin/lti_store/externallticonfiguration/``). The Filter Key usually has the form ``lti_store:slug`` (e.g. ``lti_store:reference_tool``). You will use this value later in Studio when referencing this configuration from the LTI Consumer component.

.. image:: /_images/site_ops_how_tos/external_lti_configuration.png
:alt: Showing the association between the Django Admin external LTI configuration and the Studio LTI component



Recommended: Use the IMS LTI Reference Tool
Expand Down