One way to minimize "it works on my machine" type of issues and bad surprises related to incompatibilities (especially in team contexts) is to be very specific (and if possible, ideally enforce) about the software versions that are used across the entire stack.
package.json. As stated in the
it's used to "specify the version of node that your stuff works on".
engines.node is specified, someone that tries to
yarn install (and not
using a compatible
node version) will get an error similar to
The engine "node" is incompatible with this module. Expected version "v20.10.0". Got "16.20.2".
Run the following command to set
engines.node according to the current
npm pkg set engines.node=$(node -v)