2018-02-27 Theming Meeting (FedX Core + Open Source)

Attendees:

Tactical Issues: Hawthorn

Q: Some small things are going to change/break, where should we document and by when?

A: Make sure Hawthorn page is updated to point to people still here. Pull request against documentation that would have to change.

Cale: It should be on edx-platform's docs and build to RTD (half of it already is). Cale thinks this should live in edx-platform instead of a separate repo.

(We're punting on this for now, though we'll make tickets for the documentation.)

Longer Term: Making Themes Better

Q: How was the community involved for Comprehensive Theming development?

Ned: How we got Comprehensive Theming

  • We had nothing in edx-platform
  • Stanford did the simplest possible thing that could work ("if statements") – Stanford Theming
  • Two efforts were happening
    • Structured (Design perspective): Here are things that you can change, here are all the things you should not change.
      • Idea was to create a stable theming API.
      • It was taking a long time.
    • Freeform (Tech perspective): What's the simple thing we could do to let people change the front end? Make arbitrary overrides.
      • Fast to build
      • Gave people a better way to do theming than they had
      • This is "Comprehensive Theming"
      • Not clear there was a requirements gathering process.
      • We've had PRs where folks have extracted small files from larger ones so that they can be overridden in a more modular way.

Q: What's the right way to engage the community?

A: 

  • Mailing List
  • Slack
  • edXchange board
    • It's not clear if this board is accessible at this time.
  • Reboot of Open edX remote meetup?
  • Check GitHub for who has themes written.
  • Special Interest Group around Front End
    • FedX notes are already on Confluence
    • Monthly hangout like the devops configuration model?
    • This requires a lot of coordination effort on our part.

Q: What are known pain points?

A:

  • Can't override underscore templates.
  • Slow compilation/test cycle.
  • Unclear documentation.
  • No stable API – things shift around from release to release.
  • Three versions of CSS floating around.
  • Large files to override.
  • We don't know what we can delete.
  • edx.org has no stake in getting theming right, difficult to resource large scale changes – but that might change with rebranding project
    • All new branding stuff should be in a theme.

Ways people want to theme

  • Style: We want to get folks using Bootstrap for CSS Theming – better defined, well understood by a large community.
  • Structural changes: Continue this, but make no release-to-release promises. Better tooling to flag changes that were made? We should gather requirements here.
  • Text changes: ("certificate" example for Stanford)
  • Logo


Q: How does Comprehensive Theming work with our shift to React components?

  • Ned: Ideally, we'd have a technical design to better separate our concerns from theirs and give stability. Not sure what that would look like.
  • For text replacement, look at what Studio Front End does.
  • Make Comprehensive Theming and Webpack work together?
    • Do we really have to right now?

Next Steps