Failure with React Version on RUN npm install @edly-io/indigo-frontend-component-footer@^2.0.0

I am new to Open edX, and I am trying to set up a local development environment using the following steps:

python3 -m venv env
source env/bin/activate
git clone https://github.com/overhangio/tutor
cd tutor
git checkout main # this was the golden ticket
pip install -e .
tutor dev launch

For account-common, discussions-common, and learning-common, I am getting the same error:

 > [account-common 4/9] RUN npm install @edly-io/indigo-frontend-component-footer@^2.0.0:
130.6 npm error code ERESOLVE
130.6 npm error ERESOLVE unable to resolve dependency tree
130.6 npm error
130.6 npm error While resolving: @edx/frontend-app-account@1.0.0-semantically-released
130.6 npm error Found: react@18.3.1
130.6 npm error node_modules/react
130.6 npm error   react@"18.3.1" from the root project
130.6 npm error   peer react@"^16.9.0 || ^17.0.0 || ^18.0.0" from @edx/frontend-platform@8.3.7
130.6 npm error   node_modules/@edx/frontend-platform
130.6 npm error     @edx/frontend-platform@"^8.3.3" from the root project
130.6 npm error     peer @edx/frontend-platform@"^7.0.0 || ^8.0.0" from @edly-io/indigo-frontend-component-footer@2.0.3
130.6 npm error     node_modules/@edly-io/indigo-frontend-component-footer
130.6 npm error       @edly-io/indigo-frontend-component-footer@"^2.0.0" from the root project
130.6 npm error   6 more (@openedx/frontend-build, @openedx/paragon, react-dom, ...)
130.6 npm error
130.6 npm error Could not resolve dependency:
130.6 npm error peer react@"^16.9.0 || ^17.0.0" from @edly-io/indigo-frontend-component-footer@2.0.3
130.6 npm error node_modules/@edly-io/indigo-frontend-component-footer
130.6 npm error   @edly-io/indigo-frontend-component-footer@"^2.0.0" from the root project
130.6 npm error
130.6 npm error Fix the upstream dependency conflict, or retry
130.6 npm error this command with --force or --legacy-peer-deps
130.6 npm error to accept an incorrect (and potentially broken) dependency resolution.

Are there suggestions for how I can fix this?

Hi @Mary_Gwozdz and welcome!

Have you followed the instructions here? Open edX development — Tutor documentation

I did run into this problem recently and just uninstalled indigo, but I’ve tagged the post with tutor-indigo which I’ve been told will get the eyes of the Indigo maintainers.

Hi @sarina, thank you!

I was using these 2 pages for instructions:

However, I reviewed the link you shared as a third reference as well as your advice to uninstall Indigo, and I’ve managed to have things pretty close to working now. Here are the steps I ended up using:

python3 -m venv env
source env/bin/activate
git clone https://github.com/openedx/edx-platform
git clone https://github.com/overhangio/tutor
cd tutor
git checkout main # Fixes error for RUN npm run compile-sass -- --skip-themes 
pip install -e .

Go into tutor/requirements/plugins.txt and delete the line tutor-indigo@git+https://github.com/overhangio/tutor-indigo@main then save.
Set Docker Desktop to use 12GB of RAM in Settings>Resources>Advanced>Resource Allocation:Memory limit

tutor mounts add ./edx-platform
tutor images build openedx-dev
tutor dev launch

Ah, I would follow these instructions to uninstall Indigo:

@Mary_Gwozdz is there anything else you’re stuck on at this moment?

I tried putting the indigo line back in the plugins.txt and instead uninstalling it with tutor plugins disable indigo followed by tutor images build mfe openedx and then rebuilding, but now I am getting the following error. I also tried tutor images build openedx mfe --no-cache but I got the same error. Is there something else that I need to adjust?

 => ERROR [production 30/37] RUN npm run postinstall  # Postinstall artifacts are stuck in nodejs-requirements layer. Create them here too.                                                                                                            1.2s
------
 > [production 30/37] RUN npm run postinstall  # Postinstall artifacts are stuck in nodejs-requirements layer. Create them here too.:
1.122 
1.122 > edx@0.1.0 postinstall
1.122 > scripts/copy-node-modules.sh
1.122 
1.132 ===================================================================================== 
1.132 Copying required assets from node_modules... 
1.132 ------------------------------------------------------------------------------- 
1.132 Ensuring vendor directories exist... 
1.132 +mkdir -p common/static/common/js/vendor 
1.135 +mkdir -p common/static/common/css/vendor 
1.138 Copying studio-frontend JS & CSS from node_modules into vendor directores... 
1.147 find: ‘node_modules/@edx/studio-frontend/dist’: No such file or directory
1.149 Copying certain JS modules from node_modules into vendor directory... 
1.150 +cp --force node_modules/backbone.paginator/lib/backbone.paginator.js node_modules/backbone/backbone.js node_modules/bootstrap/dist/js/bootstrap.bundle.js node_modules/hls.js/dist/hls.js node_modules/jquery-migrate/dist/jquery-migrate.js node_modules/jquery.scrollto/jquery.scrollTo.js node_modules/jquery/dist/jquery.js node_modules/moment-timezone/builds/moment-timezone-with-data.js node_modules/moment/min/moment-with-locales.js node_modules/requirejs/require.js node_modules/underscore.string/dist/underscore.string.js node_modules/underscore/underscore.js node_modules/which-country/index.js common/static/common/js/vendor 
1.155 cp: cannot stat 'node_modules/backbone.paginator/lib/backbone.paginator.js': No such file or directory
1.155 cp: cannot stat 'node_modules/backbone/backbone.js': No such file or directory
1.156 cp: cannot stat 'node_modules/bootstrap/dist/js/bootstrap.bundle.js': No such file or directory
1.156 cp: cannot stat 'node_modules/hls.js/dist/hls.js': No such file or directory
1.156 cp: cannot stat 'node_modules/jquery-migrate/dist/jquery-migrate.js': No such file or directory
1.156 cp: cannot stat 'node_modules/jquery.scrollto/jquery.scrollTo.js': No such file or directory
1.156 cp: cannot stat 'node_modules/jquery/dist/jquery.js': No such file or directory
1.156 cp: cannot stat 'node_modules/moment-timezone/builds/moment-timezone-with-data.js': No such file or directory
1.156 cp: cannot stat 'node_modules/moment/min/moment-with-locales.js': No such file or directory
1.156 cp: cannot stat 'node_modules/requirejs/require.js': No such file or directory
1.156 cp: cannot stat 'node_modules/underscore.string/dist/underscore.string.js': No such file or directory
1.156 cp: cannot stat 'node_modules/underscore/underscore.js': No such file or directory
------
Dockerfile:212
--------------------
 210 |     # Build & collect production assets. By default, only assets from the default theme
 211 |     # will be processed. This makes the docker image lighter and faster to build.
 212 | >>> RUN npm run postinstall  # Postinstall artifacts are stuck in nodejs-requirements layer. Create them here too.
 213 |     RUN npm run compile-sass -- --skip-themes
 214 |     RUN npm run webpack
--------------------
ERROR: failed to solve: process "/bin/sh -c npm run postinstall  # Postinstall artifacts are stuck in nodejs-requirements layer. Create them here too." did not complete successfully: exit code: 1
Error: Command failed with status 1: docker buildx build --tag=docker.io/overhangio/openedx:19.0.3-main --no-cache --output=type=docker --cache-from=type=registry,ref=docker.io/overhangio/openedx:19.0.3-main-cache --build-context=edx-platform=/Users/mgwozdz/axim/edx-platform /Users/mgwozdz/Library/Application Support/tutor-main/env/build/openedx

@Mary_Gwozdz I haven’t seen this before. It might be better to just start completely fresh, and then uninstall Indigo the proper way.

Thank you! I started over from scratch, and I was able to get it to build successfully without any errors, just warnings. I also updated my /etc/hosts file to point 127.0.0.1 to each domain from the build output. I’m able to get to http://local.openedx.io:8000 and I was able to create an account there and log in. However, when I try to go to http://studio.local.openedx.io:8001, I am redirected to http://localhost:2001/home which doesn’t correspond to any of the docker containers I have running. Do you know why this might be? Also, do you know how I can create an account for an administrator user?

My total setup steps are now these:

python3 -m venv env
source env/bin/activate
git clone https://github.com/openedx/edx-platform
git clone https://github.com/overhangio/tutor
cd tutor
git checkout main # Fixes error for RUN npm run compile-sass -- --skip-themes 
pip install -e .

Set Docker Desktop to use 12GB of RAM in Settings>Resources>Advanced>Resource Allocation:Memory limit

tutor mounts add ./edx-platform
tutor plugins disable indigo
tutor images build openedx-dev
tutor dev launch

Update your /etc/hosts file to point 127.0.0.1 to each domain in the build output.

@Mary_Gwozdz I would start a new thread for the localhost:2001 issue after searching the forums for anyone else running into the same issue.

User information can be found in the Tutor docs (I just searched the Tutor docs for “admin” to find this link): Local deployment — Tutor documentation

Thank you very much!