Skip to content

Migrate old theme to indigo #518

@ahmed-arb

Description

@ahmed-arb

As part of #517 we have to migrate the Wiklearn's old theme to Wikimedia fork of Indigo.

Related PR: wikimedia/tutor-indigo-wikilearn#1

✅ Migration Checklist:

1. CMS (Studio) Theme Migration

Static

  • Validate bootstrap/ compatibility with Teak
  • Migrate images (favicon.ico, studio-logo.png)
  • Port Sass overrides:
    • components/_header.scss
    • partials/cms/theme/* (_variables, _extras, _spinner, etc.)

Templates

  • Update base.html (check for deprecated blocks in Teak)
  • Review index.html and course-create-rerun.html
  • Update studio_xblock_wrapper.html if block changes exist
  • Migrate widgets/header.html
  • Adjust js/course-outline.underscore for Teak compatibility

2. LMS Theme Migration

Static

  • CSS:
    • Core (lms-main.css, lms-course.css, RTL variants)
    • Footer (lms-footer.css, lms-footer-edx.css)
    • Discussions (inline-discussion.css, lms-discussion-bootstrap.css)
    • Mobile (lms-mobile.css, RTL)
    • Certificates styles (_main.scss)
  • Images (logo.png, banner-bg.png, favicon.ico, etc.)
  • Sass:
    • Base (_reset.scss, _mixins.scss)
    • Components (_header.scss, _footer.scss, _refine-sidebar.scss)
    • Features (_catalog.scss, _discussion.scss, _progress-page.scss)
    • Partials (theme/_variables.scss, _extras.scss, _custom-fonts.scss)
    • certificate styling (theme/_certificate.scss)

Templates

  • main.html this template only has messenger related changes. We should revisit this when working on the messenger app.
  • index.html
  • footer.html
  • MFE Footer
  • MFE Footer Authoring
    Note: The Open edX footer (v14.9.2/src) is referenced instead of the teak/indigo footer. Reason: The teak/indigo version does not provide footer slots, which leads to build errors.
  • Header templates (navbar-authenticated.html, navbar-not-authenticated.html, user_dropdown.html)
  • Courseware templatescourseware.html, tabs.html, course_navigation.html)
  • Course pages (course.html, courses.html)
  • Discovery (course_card.underscore, facet.underscore)
  • ACE templates:
    • ace_common/edx_ace/common/base_body.html
    • student/edx_ace/accountactivation/email/*
  • Login (student_account/login.underscore)
  • about page (static_templates/about.html)

3. Compatibility & Testing

  • Remove Order History from the user dropdown menu
  • Check course card description
  • Check for deprecated template blocks in Teak
  • Update Sass variables to match Teak defaults (_variables.scss)
  • Verify RTL stylesheet builds correctly
  • Rebuild assets with tutor dev run lms npm run build
  • Validate LMS & CMS UIs load theme correctly
  • Test certificates rendering with new Sass partials
  • Test Discovery search filters and course cards
  • Verify email templates (ACE) render properly

4. Final Steps

  • Remove unused Maple-specific overrides
  • Document all customizations in README.md
  • QA pass: verify theming in dev Teak instance with dev maple instance
  • Mark migration as complete 🚀

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions