How to mod the helmet component in Learning MFE?

A continuation from my post here, I’ve succeeding in modifying the footer component using the mfe-dockerfile-post-npm-install patch method. But it changes the entire installed package and seems like only affecting the targeted package (in that case, the @edx/frontend-component-footer)

Then how to mod a files that are not installed as dependency/package?

Because my aim is to adding some meta tags in the helmet component in the src/index.jsx of Learning MFE? Without manually changing the code on the container itself. (and if there are a plugin patch for this, I’ll gladly to use it)

and could this be counted as the same as “theming”?
since if there is a way to mod the helmet component, then same method could also be applied to change the .scss…?
(but well, this might divert the main topic :smile:)

I got it, turns out it might be the same by using the mfe-dockerfile-post-npm-install but targeting the @edx/frontend-app-learning package instead.

but now, the question is, it looks like that patch only installing once at build time?

what are patches to use to make sure that it always runs the latest package released? Should I use a plugin to make action job or something?

I’ve just tried it but it yield no result, any thoughts?

So to reacap, you would want to override the a spesfic pacakge that is footer for a spesfic MFE that is learning.

And If I get your situation right, the unexpected result when using the patch, is that will be change the footer for all the MFEs not just one, which I think is the expected.

  1. I think what you need to do is, to fork the learning mfe, and then it that fork update the depencey to match your version of mfe

  2. Update the version, repoistory of MFE_LEARNING_MFE_APP to match your new fork. tutor config printvalue MFE_LEARNING_MFE_APP see the result and then override it with tutor config save --set MFE_LEARNING_MFE_APP={...etc}

This approach you no longer need to use the post install patch because you want to change a spesfic MFE, and the changes is already done in your fork of the MFE.

Note: I don’t if this the best way to do it, but this I what I did when I was in simlair position

this would be helpful! Thank you.

also I wanna ask, on a production, how can I deliver a frequent UI change?
(is it using the mount binding on a local repo?)