This is an older Lerna monorepo for rl-js. The browser app lives in packages/apps/react and uses react-scripts@1.1.4, so use an older Node runtime for local development.
Use Node 16:
source ~/.nvm/nvm.sh
nvm useThe repo includes .nvmrc with 16. In this workspace, nvm is installed at ~/.nvm, but it may not be sourced automatically by non-interactive shells.
From the repo root:
npm install --legacy-peer-deps
npx lerna bootstrap -- --legacy-peer-depsThe legacy peer dependency flag is needed because the dependency tree is old and npm's modern peer resolution is stricter than the tooling this repo was built with.
From packages/apps/react:
BROWSER=none HOST=0.0.0.0 PORT=3000 npm startThe app should compile and serve at:
http://localhost:3000/
Expected successful output includes Compiled successfully!. A quick smoke check is:
curl -I http://localhost:3000/npm run buildinpackages/apps/reactcurrently fails with CRA 1's minifier because linked local@rl-js/*packages contain modern JavaScript syntax that is not transpiled by the production build.npm test -- --runInBandat the repo root currently fails because the root package declares atestscript that callsjest, butjestis not listed as a root dependency.npm installwith modern npm may rewrite oldpackage-lock.jsonfiles to a newer lockfile format. Avoid committing lockfile rewrites unless dependency updates are intentional.- The app can run locally without changing application source code when using Node 16 and the commands above.