Tutor Themewatch error

Good evening, I’ve tried tirelessly to try to figure this one out today and keep coming up empty handed. I started with the tutor indigo theme repo, cloned it, installed, activated on local dev server. Followed all the docs I could find, and everything is working as expected up until this point. I can change static images in the image directory, save the config, and the theme updates on the dev instance as expected. I turn on:

tutor dev run watchthemes

then make some sass changes, watchthemes kicks in the recompile css and I get this error in the rebuild:

Error: Command failed with status 137: docker compose -f /Users/ryan.rad/Library/Application Support/tutor/env/local/docker-compose.yml -f /Users/ryan.rad/Library/Application Support/tutor/env/dev/docker-compose.yml --project-name tutor_dev run --rm watchthemes

I’ve scoured every corner of the internet to try to solve this. Community help would be greatly appreciated!

Thanks,
Ryan

Hi @Ryan_Radwanski!

While I can’t guarantee I’ll have time to try and reproduce this soon, it would be great to have a more complete log from which we might try to glean what part actually failed.

Also, can you please share what version of Tutor (16, 17) and/or Open edX (Olive, Quince) you’re running, on what platform (Linux/Ubuntu, Mac), and what Docker version (docker --version)?

Hi Ryan,

Are you able to share more logs, please? What I understand is that there might be errors in styling files, that’s why it is throwing error. Also, I will appreciate if you provide tutor and tutor-indigo version you are using.

Thank you both, I will get all that information this evening when I have time to get back to troubleshooting this problem. Forgive my inexperience as a junior dev, but which logs exactly would be most helpful for me to share?

Tutor version 17.0.4
Open edX Qince
Running Dev Environment on Mac OS Sonoma 14.41
Docker Version 26.0.0, build 2ae903e
Tutor-indigo version should be latest ( v17.3.0 ?). This is my fork: GitHub - RyanRad-BSG/tutor-indigo: An elegant, customizable theme for Open edX
watchthemes logs attached
Logs.rtf (1.6 MB)

Allow me to explain my ultimate goal here, perhaps solving this specific error is not even the best route to achieving the end means. After forking and cloning the tutor-indigo repo, and installing it via plugin commands, I then copied the indigo theme file within the open edx themes file directory to use as a template for making an entirely new theme. My goal is also refactor the plugin and change the new theme files to generate a custom theme called “cortex” that we can then install on our live instance via python package plugin. For now, someone else is working on refactoring of the indigo plugin for cortex, and I am working on getting changes to the theme files to compile and update on the dev server properly.

@Ryan_Radwanski After observing the logs, it is shown that there is no error in any file. Sometimes, I have to face the similar thing but it was when there is something wrong with files such as sass variable is not defined. Can you please compile your theme by the below method which I used.

  1. Open your lms container terminal and run the below command:
npm run compile-sass -- --theme cortex --theme-dir /openedx/themes --skip-cms --skip-default

This command compiles your theme and show error messages if there is any error with sass files. Let us know if it helps. Then, we can come closer one step to identify the watchthemes problem.

Good morning @hinakhadim - thanks for much. This helped me a lot just in learning my way around the front end in general. I was able to go into the LMS docker container and run the command you provided

Logs:
compile logs.rtf (4.4 KB)

I don’t see any notable error with the css compiling. However, I’m still not seeing CSS changes reflected on the dev server. I did make note that my dev server has the MFE’s plugin installed and enabled by default (which I did not original realize). I’m curious if the reason I’m not seeing CSS changes to my cortex theme reflected on the front end after manually compiling the css is because of this? It seems the Indigo theme documentation addresses something similar here: GitHub - overhangio/tutor-indigo: An elegant, customizable theme for Open edX

I think this brings up a more general learning point that I’m trying to sort out - the general architectural relationship between themes and mfe’s and knowing which domain I need to be working on to make a given change. My current understanding (correct me if I’m wrong) is that theming came before MFE’s, theme’s override certain broad aspects of the UI and MFE’s drill down to creating UI’s for very specific UX domains? If this seems correct, my goal is to sort out working on our cortex theme and then start digging into customizing specific MFE’s. Is that the correct approach?

Hi @Ryan_Radwanski I have been following the topic, am looking for something similar, i would like to know also the best approach to making changes to the frontend…have you had any lucky with this? Thanks

Hi @david.wedotech sadly nothing substantial to report at this time. I’ve been busy with some other aspects of my tech backlog and haven’t had a chance to work on this for a week or so. I haven’t figured out why watchthemes is not working locally yet. I’ve managed to get some css changes to work but haven’t entirely parsed out why some are working and other aren’t. Will keep you posted. Please do the same if you gain any clarity to share!

Thanks @Ryan_Radwanski, will keep you posted if anything, i am currently exploring this [(GitHub - overhangio/tutor-mfe: This plugin makes it possible to easily add micro frontend (MFE) applications on top of an Open edX platform that runs with Tutor.) , its worth checking out.