Why am I getting an error when creating an app with Remix?

Topic summary

A developer is encountering a build error while following Shopify’s official documentation to create a new Remix app from scratch.

Error Details:

  • The npm install command fails with exit code 1
  • The failure occurs during the build process of @parcel/watcher package
  • The error happens when node-gyp rebuild attempts to compile native dependencies
  • Environment: Node v20.11.0, macOS (darwin arm64), Python 3.9.6

Additional Context:

  • Deprecation warnings appear for Babel plugins (class-properties and object-rest-spread)
  • The error output shows garbled/reversed text in portions of the log, suggesting potential encoding or display issues
  • The build process fails during the native module compilation phase using node-gyp

Status: The issue remains unresolved with no responses or solutions provided yet. This appears to be a tooling/dependency compilation problem rather than a code issue.

Summarized with AI on November 12. AI used: claude-sonnet-4-5-20250929.

I am trying to create an app from scratch using this https://shopify.dev/docs/apps/getting-started/create#step-1-create-a-new-app but I am getting the error below.

Error coming from `npm install`

Command failed with exit code 1: npm install
npm WARN deprecated /plugin-proposal-class-properties@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use
@babel/plugin-transform-class-properties instead.
npm WARN deprecated /plugin-proposal-object-rest-spread@7.20.7: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use
@babel/plugin-transform-object-rest-spread instead.
npm ERR! code 1
npm ERR! path /private/var/folders/xl/svqybl9s4v1163mm2t0jz9jh0000gn/T/ce386494c4191d6a5225837a9e88779b/app/node_modules/@parcel/watcher
npm ERR! command failed
npm ERR! command sh -c node-gyp rebuild
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@10.0.1
npm ERR! gyp info using node@20.11.0 | darwin | arm64
npm ERR! gyp info find Python using Python version 3.9.6 found at "/Library/Developer/CommandLineTools/usr/bin/python3"
npm ERR! gyp http GET https://nodejs.org/download/release/v20.11.0/node-v20.11.0-headers.tar.gz
npm ERR! gyp http 200 https://nodejs.org/download/release/v20.11.0/node-v20.11.0-headers.tar.gz
npm ERR! gyp http GET https://nodejs.org/download/release/v20.11.0/SHASUMS256.txt
npm ERR! gyp http 200 https://nodejs.org/download/release/v20.11.0/SHASUMS256.txt
npm ERR! gyp info spawn /Library/Developer/CommandLineTools/usr/bin/python3
npm ERR! gyp info spawn args [
npm ERR! gyp info spawn args '/opt/homebrew/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
npm ERR! gyp info spawn args 'binding.gyp',
npm ERR! gyp info spawn args '-f',
npm ERR! gyp info spawn args 'make',
npm ERR! gyp info spawn args '-I',
npm ERR! gyp info spawn args '/private/var/folders/xl/svqybl9s4v1163mm2t0jz9jh0000gn/T/ce386494c4191d6a5225837a9e88779b/app/node_modules/@parcel/watcher/build/config.gypi',
npm ERR! gyp info spawn args '-I',
npm ERR! gyp info spawn args '/opt/homebrew/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
npm ERR! gyp info spawn args '-I',
npm ERR! gyp info spawn args '/Users/eric/Library/Caches/node-gyp/20.11.0/include/node/common.gypi',
npm ERR! gyp info spawn args '-Dlibrary=shared_library',
npm ERR! gyp info spawn args '-Dvisibility=default',
npm ERR! gyp info spawn args '-Dnode_root_dir=/Users/eric/Library/Caches/node-gyp/20.11.0',
npm ERR! gyp info spawn args '-Dnode_gyp_dir=/opt/homebrew/lib/node_modules/npm/node_modules/node-gyp',
npm ERR! gyp info spawn args '-Dnode_lib_file=/Users/eric/Library/Caches/node-gyp/20.11.0/<(target_arch)/node.lib',
npm ERR! gyp info spawn args '-Dmodule_root_dir=/private/var/folders/xl/svqybl9s4v1163mm2t0jz9jh0000gn/T/ce386494c4191d6a5225837a9e88779b/app/node_modules/@parcel/watcher',
npm ERR! gyp info spawn args '-Dnode_engine=v8',
npm ERR! gyp info spawn args '--depth=.',
npm ERR! gyp info spawn args '--no-parallel',
npm ERR! gyp info spawn args '--generator-output',
npm ERR! gyp info spawn args 'build',
npm ERR! gyp info spawn args '-Goutput_dir=.'
npm ERR! gyp info spawn args ]
npm ERR! gyp: binding.gyp not found (cwd: /private/var/folders/xl/svqybl9s4v1163mm2t0jz9jh0000gn/T/ce386494c4191d6a5225837a9e88779b/app/node_modules/@parcel/watcher) while trying to load binding.gyp
npm ERR! gyp ERR! configure error
npm ERR! gyp ERR! stack Error: `gyp` failed with exit code: 1
npm ERR! gyp ERR! stack at ChildProcess.

I am using Node v20.11.0 (npm 10.4.0). I am not sure what I am doing wrong. This is literally what I did.

![ericute_0-1707150020420.png|1027x225](upload://y3m757Ntp8TUEWVYXIqpJGiggP0.png)