Skip to content

Pathways Experience

Overview

The Pathways Experience covers how learners discover, browse, and navigate courses and programs — including the learner home (dashboard), catalog, and program pages. It's the pre-course and between-course experience: enrollment, re-enrollment, program progress, and course discovery.

This area has undergone significant modernization — the legacy dashboard (a Django-rendered page) is being replaced by the frontend-app-learner-dashboard MFE, and catalog functionality is powered by the course-discovery service.

Current State (2026)

  • Learner home: frontend-app-learner-dashboard MFE shows enrolled courses, program progress, recommended courses
  • Catalog: course-discovery service powers program and course metadata; frontend-app-catalog provides browsing UI
  • Program pages: Programs (sequences of courses with shared credentials) displayed via course-discovery + credentials integration
  • Enrollment: Still managed by edx-platform LMS enrollment API; MFEs call enrollment endpoints

Architecture

  • Learner dashboard MFE: Fetches enrolled courses, program enrollments, and recommendations from LMS and course-discovery APIs
  • Course Discovery: Separate Django service with Elasticsearch for search; stores course runs, programs, organizations
  • Recommendations: Learner-specific recommendations may use catalog metadata or ML-based systems (varies by deployment)
  • B2B pathway layer: Enterprise learners may see restricted catalogs via edx-enterprise and enterprise-catalog

Relevant Repositories

RepositoryRole in This FeatureActivity LevelNotes
openedx/frontend-app-learner-dashboardLearner home MFEHighReplacing legacy dashboard
openedx/course-discoveryProgram/course catalog serviceHighElasticsearch-backed
openedx/frontend-app-catalogCatalog browsing MFEMediumPublic catalog UI
openedx/openedx-platformLegacy dashboard, enrollment APIHighstudent/views/
openedx/enterprise-catalogEnterprise-restricted catalogsHighB2B catalog filtering

Recent Changes

  • frontend-app-learner-dashboard replacing legacy Django dashboard (major ongoing initiative)

History

Origin

  • Year introduced: 2012 (original learner dashboard launched with edX)
  • Initial implementation: Django-rendered dashboard at /dashboard showing enrolled courses as a card grid
  • Context: The original dashboard was the first thing learners saw after logging in; designed to be a simple enrollment list

Key Milestones

YearMilestoneTeams / People Involved
2012Original /dashboard view launchedUnknown
~2015Programs concept introduced (sequence of courses)Unknown
~2018course-discovery service extracted from monolithUnknown
~2022frontend-app-learner-dashboard MFE development beginsUnknown

People Who Shaped This Area

  • Engineering: Unknown — open question for interview
  • Product: Unknown — open question for interview
  • Design: Unknown — open question for interview

Open Questions

  • [ ] When was the "Programs" concept first introduced and who designed it?
  • [ ] When was course-discovery extracted from the monolith and why?
  • [ ] What drove the decision to build a dedicated learner home MFE?
  • [ ] How does the catalog experience differ between self-paced open installations and enterprise deployments?
  • [ ] Who designed the original learner dashboard and what were the guiding principles?

Schema Education — Internal Research