[Proposal] Learning Path Implementation by Edly <> OpenCraft

[Proposal] Learning Path Implementation by Edly <> OpenCraft

A Phased Approach to Modular Learning Paths / Sequencing by Edly and OpenCraft

Background and Context

Following recent client discussions, there is confirmed interest in implementing Learning Paths that can be configured directly within Studio and surfaced to learners in a clear, structured way. Two complementary proposals, Edly’s catalog and sequencing UI, and OpenCraft’s learner-facing UI and backend, present a strong case for a phased implementation that meets immediate institutional needs while aligning with the Open edX platform’s long-term goals around modular content delivery.

A current OpenCraft client has agreed to potentially partially fund this work, contingent on technical feasibility and alignment with the community. After reviewing OpenCraft’s existing UI and Edly’s proposed authoring tools, the client confirmed that this direction would meet their needs.

This proposal outlines a three-phase implementation, designed to:

  • Deliver immediate value (sequencing courses into programs)

  • Establish foundations that can be built upon by the community

  • Accommodate alternative catalog and discovery approaches through modularity

This infrastructure lays the groundwork for competency-based education (CBE). This will allow learning paths to be aligned with skills or competency frameworks, enabling flexible mastery rules and credentialing in future phases.

Client Use Cases

Use Case 1: Basic Learning Paths

  • Learning Paths are authored in Studio

  • Learning Paths assigned to learners by instructors (learners cannot select their own)

  • Learners cannot view available Learning Paths in the Discovery UI

  • Learners can (reuse OpenCraft’s learner-facing UI):

    • See their full pathway

    • Track progress through sequenced courses

    • Understand what's required to complete the full path (or tier)

  • Supports MVP needs of institutions who manage enrolments centrally but want structured learner views

Use Case 2: Advanced Learning Paths with Tiering

Builds on Use Case 1 with added functionality:

  • Multi-level Learning Paths (e.g. nested or progressive structures)

  • Elective and flexible groupings (e.g. “choose 2 of 5”)

  • Course prerequisites and unlocking logic

  • Certificate tiers (e.g. “Complete Tier 1 + Electives to unlock Tier 2 certificate”)

Proposed Approach

Phase 1: Backend Foundation

Goal: Establish the backend structure for Learning Paths, including models, logic, and Django admin interfaces, with future learner progress tracking and credentialing logic in mind.

Scope:

  • Set up Django admin pages to:

    • Create and Learning Paths.

    • Link courses to Learning Paths.

    • Manage enrollments.

  • Set up APIs to:

    • List and retrieve Learning Paths.

    • List and create enrollments (including individual and bulk enrollment APIs).

    • Enroll users into courses that are included in a Learning Path (to bypass invite-only course requirements).

  • Implement platform integration (as suggested by @Felipe Montoya during the last Product WG meeting). This step is optional, but it would ensure that the Learning Paths are natively available in the platform:

  • No UI work (Studio or learner-facing) will be done in this phase.

  • Lay the groundwork for certificate/tier logic tied to learner progress tracking (based on completion and grading), and future UI integrations.

This work will align with and support the enhanced certificate and completion logic under discussion in the Open edX community: Enhanced certificate generation, completion, grades, and tiers. The Learning Credentials repository is responsible for calculating Learning Paths progress in order to define flexible certification criteria. This way, course authors can define individual requirements for each step (i.e. course) in a Learning Path.

Most, if not all, of the code for this functionality already exists and is being used in production on a large Open edX instance. So the main goal for Phase 1 would be to verify that the existing backend logic:

  • supports the basic set of use cases that the community would like to see in an MVP implementation.

  • can be used as a starting point for building out instructor and learner-facing functionality for Studio and the LMS in subsequent phases.

Once there is consensus around that, we could upstream the existing implementation by transferring it to the openedx organization on GitHub.

Phase 2a: Minimal Studio Authoring UI

Goal: Build a Studio authoring experience scoped specifically to course sequencing, intentionally simple, but designed for extension.

Scope:

  • Develop a visual Studio-facing UI for Learning Path authoring

  • Ensure integration with backend logic and upstream alignment

  • Allow course teams to group courses and define Learning Path properties within Studio

Phase 2b: Learner-facing UI

Goal: Provide a clear, structured learner experience with progress tracking leveraging OpenCraft’s learner-facing UI.

Scope:

  • OpenCraft’s existing learner-facing UI and backend logic will be adapted for upstream compatibility.

  • Learners will see:

    • Assigned Learning Paths

    • Grouped courses with completion status

    • Visual progress tracking through the sequence

  • Designed to support future enhancements like elective selection, self-enrolment, and discovery UIs

Discussion point:

To ensure a cohesive learner experience, we’d like to explore whether OpenCraft’s “My Learning” dashboard could form the basis of a unified learner interface. This dashboard presents all enrolments (courses + learning paths), supports filtering and search, and includes progress tracking, reducing the need to switch between different views.

cdn.webp

We understand that the Open edX community is currently rebranding the Learner Home, and we want to avoid duplicating or diverging from that direction.

We’d like to ask the community:

  • Is it feasible to contribute or align our existing dashboard with the evolving core dashboard work?

  • What would be the best path to explore this integration: collaboration on the new Learning MFE, or a plugin architecture that supports custom dashboards?

  • If a shared direction isn’t possible right now, is it acceptable to temporarily override the dashboard in specific deployments (while maintaining API compatibility)?

Our goal is to avoid creating parallel dashboards and instead support a single, learner-friendly view, whether an institution delivers courses, learning paths or both.

Phase 3: Plugin Architecture and Extension Hooks

Goal: Prepare the platform for modular, community-built pathway extensions without altering core code. No feature plugins will be built in this phase, focus is on creating the architecture that allows them

Scope:

  • Add plugin slots and extension hooks to the Studio authoring MFE

  • Define backend extension points for learning path logic

  • Provide API endpoints and contracts for plugins to:

    • Add new configuration options in Studio

    • Extend learner-facing views and logic

    • Introduce new completion/credentialing rules

  • Document the plugin API to enable community adoption

Future Phases:

Deliver modular extensions to support real-world use cases, including those required by current clients.

Examples:

  • Create plugins for:

    • Tiered certification logic (e.g. complete basic + electives to unlock advanced tiers)

    • Flexible course groupings (e.g. “choose 3 of 5”, “at least one from this list”)

This will require extensions to both the backend implementation and user-facing functionality in Studio and the LMS.

Modularity and Collaboration

We recognise the overlapping efforts from other vendors (Schema, EduNext, etc.) and actively support a modular implementation model. Our proposed plugin architecture is designed to:

  • Avoid vendor lock-in

  • Allow alternative catalog UIs to interoperate

  • Enable credentialing or rubrics extensions without core changes

We welcome Schema’s and EduNext’s proposals and view this phased work as a foundation others can build on.

Next Steps

We are seeking:

  • Community endorsement of Phase 1 as the starting point, so we can prepare a product proposal for a practical, MVP-aligned foundation.

Once Phase 1 is approved, we will:

  • Iteratively develop and refine each subsequent phase.

  • Present each phase as a separate proposal for community review and feedback before moving forward.