Metro ERR when running 8base Starting React Native App

Hello all,

I am trying to install and run the 8base starting react native app from their GitHub GitHub - 8base/react-native-app-example: 8base Application React Native Example with authentication and CRUD based Expo (looking to run the client part). But I got an error when running with npm start, it doesn’t work…

I did what the Readme.md said *Install dependencies npm install; Get 8base API endpoint for your account; Replace uri in the App.js with your enpoint Start app via npm start* (got many warnings and vulnerabilities tbh while installing the packages)

Still not working. i am running on Node.js v18.12.0

Here is the error

Starting Metro Bundler
node:internal/crypto/hash:71
  this[kHandle] = new _Hash(algorithm, xofLen);
                  ^

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:71:19)
    at Object.createHash (node:crypto:133:10)
    at stableHash (/Users/ronanpoder/Permanent/DEV/sesame/sesame-8base/client/employee-react-native-app/node_modules/metro-cache/src/stableHash.js:33:3)
    at new Bundler (/Users/ronanpoder/Permanent/DEV/sesame/sesame-8base/client/employee-react-native-app/node_modules/metro/src/Bundler.js:80:24)
    at new Server (/Users/ronanpoder/Permanent/DEV/sesame/sesame-8base/client/employee-react-native-app/node_modules/metro/src/Server.js:569:533)
    at /Users/ronanpoder/Permanent/DEV/sesame/sesame-8base/client/employee-react-native-app/node_modules/metro/src/index.js:46:12
    at Generator.next (<anonymous>)
    at step (/Users/ronanpoder/Permanent/DEV/sesame/sesame-8base/client/employee-react-native-app/node_modules/metro/src/index.js:47:262)
    at /Users/ronanpoder/Permanent/DEV/sesame/sesame-8base/client/employee-react-native-app/node_modules/metro/src/index.js:47:422 {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

Node.js v18.12.0

Metro Bundler process exited with code 1
Error: Metro Bundler process exited with code 1
    at ChildProcess.<anonymous> (/usr/local/lib/node_modules/expo-cli/node_modules/xdl/src/start/startLegacyReactNativeServerAsync.ts:275:16)
    at Object.onceWrapper (node:events:628:26)
    at ChildProcess.emit (node:events:513:28)
    at Process.ChildProcess._handle.onexit (node:internal/child_process:291:12)

Can someone help me ?
Or does someone has a working starter directory for React Native with 8base auth ?

Thanks a lot for your time !

Hi Ronan,

It seems that the error is related to the node version you currently have.

You can downgrade your node version to the current LTS Version which is 16.18 for windows How to downgrade node version.

or you can install NVM (Node version Manager)

Another option would be run the following command

npm audit fix --force

Let me know if any of this works.

1 Like

Hi Ronan.

This is a known issue for the Webpack:

To solve it you have two known options:

  • Downgrade node version to V16.
  • Add the --openssl-legacy-provider flag to node so that it uses the openssl v1 adapter.
NODE_OPTIONS=--openssl-legacy-provider expo start
1 Like