[Proposal] Notifications Admin MVP
Proposal currently being reworked to incorporate feedback from TOC Meeting Notes - 2025-11-12 | Notification Framework Discussion and align/reuse the current Release Notes proposal.
Link to Github ticket.
Overview
We propose building an MVP (minimum viable product) of a global notifications admin that enables designated Open edX platform representatives to create and distribute messages to learners, instructors, and course teams across all Open edX instances. Notifications will be authored and managed in a centralized, global admin and automatically delivered to every instance by default.
For the initial implementation, notifications will be created and managed through the WordPress admin of the Open edX marketing site and delivered to the platform’s notifications tray via an RSS feed. If learners have opted in to email notifications, these messages will also be sent to their inboxes. Local instance managers will retain full control and may opt out of receiving global notifications entirely.
This approach provides a simple, low-risk way to centralize instance-wide communication while laying the groundwork for more advanced notification capabilities in future releases.
Problem
The Ulmo release introduces notification functionality to the Open edX platform. This is a significant step forward, however, there are two key limitations that we believe should be addressed:
Limited scope:
Notifications are restricted to forum discussions (in the LMS), course updates, and grading activities. This prevents the community from using the feature to share broader announcements, such as important platform updates or upcoming events.Hard-coded notifications:
Notifications must currently be added through code, preventing community representatives and other non-technical users from creating messages.
Use Cases
As a Global Notifications Admin…
I want to update course teams and learners, so they stay informed about platform changes.
I want to share community news and event announcements, so course teams and learners feel connected to the wider community.
I want to urge course teams and learners to provide feedback by directing them to dedicated threads on the Open edX forum. This will help improve features and foster stronger communication across the community.
I want to encourage course teams and learners to participate in surveys and user testing, so their perspectives are better represented in the Roadmap.
As an Instructor or Course Staff Member…
I want to be notified about new and upcoming features, integrations, and platform improvements, so I can enhance my course creation and management process.
I want to be informed of events and other developments in the community, so I can be more actively involved.
I want to provide feedback on new features and integrations, so I can have a say in the direction of the platform.
I want the option to unsubscribe from announcements via the preferences center, so I can control which notifications I receive.
As a Learner…
I want to be notified about any new features for learners, so I can use them to assist with my learning.
I want to be informed of events and other developments in the community, so I can be more actively involved.
I want to provide feedback on new features and integrations, so I can help improve the platform.
I want the option to unsubscribe from announcements, so I can control which notifications I receive.
As an Instance Admin…
I want the opportunity to turn this feature off for my instance.
Proposed Solution
We propose an MVP approach that bridges the communication gap and creates a practical foundation for future features like advanced targeting and analytics.
In this MVP, notifications will be created and managed through a dedicated section of the OpenedX.org WordPress admin, and delivered to the LMS and Studio (across all instances) using WordPress’s built-in RSS feeds. Notifications will appear in the notifications tray (potentially in a separate tab called “news” or similar), and will also be emailed to users who have opted in. Instance managers may disable global notifications if they choose.
We will need to define who is responsible for drafting and managing notifications. Ideally, this group will extend beyond the current blog editors to ensure broader community representation, though this remains open for discussion.
The MVP will prioritize simplicity and usability, with the following core capabilities (many of which are already provided by WordPress):
Permissions-based access: Only authorized representatives can access the notifications admin area. Initially, these authorized representatives will likely come from Axim, but the goal is to eventually allow other community members to create notifications as well.
Notification management: Create, preview, update, and delete notifications through an intuitive interface.
List view: Display all notifications in a single, easily managed list.
Compose form: A simple form for drafting notifications, with fields tailored to each delivery method (notifications tray and email).
Drafting, scheduling, and sending: Option to save a notification as a draft, send it on a specific day and time, or send it immediately.
Targeting v1.0: Send separate notifications to learners and instructors (requires a technical discovery before determining the best approach)
Delivery options: Specify, via checkboxes, whether a notification appears in the tray, is sent by email, or both.
Statuses: Track each notification’s state (e.g., draft, scheduled, sent).
The functionality outlined above may be refined following a technical discovery. We’ll also review how WordPress handles this functionality and adjust our approach if needed.
The MVP will be built with simplicity in mind. If the global notifications admin proves valuable, it can later be replaced with a more scalable, integrated solution as needed.
Future Considerations
Targeting v2.0: Integrate notifications with the upcoming user grouping feature to enable course teams to deliver targeted interventions and support to specific learner groups.
Templates: Provide pre-built notification templates that users can customize, helping them create messages more efficiently and consistently.
Analytics: Introduce notification analytics to track key metrics such as open rates, click-throughs, and unsubscribe rates.
Other Approaches Considered
Use the Django Admin interface
We decided against this approach as it would create a poor user experience and introduce unnecessary risks. Django Admin is designed for developers and site operators, not for marketing teams or community managers.
Pull RSS feeds from the Open edX blog and/or the Open edX forum
We explored the idea of surfacing existing content from http://openedx.org or the Open edX forum via RSS feeds, curated by tags or categories. However, we rejected this option because blog and forum posts are not written for short-form notifications, making them less readable and less effective for this purpose.
Integrate with a third-party service
We considered using an external notifications service but did not identify any open-source options with APIs that met all requirements.
Implementation Plan
Before work begins, we will conduct a technical discovery to verify that the approach outlined above is the correct one.
Long-term Ownership/Maintainership
TBD. Once the proposal is approved and resourced, we’ll determine who will be responsible for the ownership and long-term maintainership of the features outlined in this proposal.
Open Questions
Please add any questions here…