create-t3-turbo issues

Hi guys, I just started diving into the create-t3-turbo monorepo. Unfortunately I'm facing some quite annoying issues setting up and running the base template. I'm following the readme and can get both apps to run with some tricks - however I was expecting it to work out of the box - and I'm not sure if it is my setup there is something wrong with. Setup: Apple M1 Pro macOS: Sonoma 14.2.1 package manager: pnpm (tried installing this several different ways) - tried every package manager and I'm facing the same issues for every one of them Issues I'm facing (I will post more info below): 1. permission denied, open - for certain files in the expo directory. Happens for the auto generated .gitignore file (can't even open it manually) - running with sudo works. Tried various recommendations online (like chmod, deleting and reinstalling the package managers etc) 2. hot reloading for the Nextjs app is quite slow (600ms - 1s to recompile), longer to appear in the browser - is this to be expected? (am I just being a brat? 🙂 ) 3. hot reloading not working in expo at all (not sure if this is can be related to issue 1) I know it can be difficult to remotely debug stuff like this, I'm at a point where I would love to give away a bounty if someone can help me out (hopefully this doesn't break any TOS 😅 ) Sorry in advance for this noob question
13 Replies
kgni
kgniOP•11mo ago
1. permission denied When running pnpm dev or pnpm --filter expo dev
@acme/expo:dev: Using src/app as the root directory for Expo Router.
@acme/expo:dev: Experimental path aliases feature is enabled. Learn more: https://docs.expo.dev/guides/typescript/#path-aliases
@acme/expo:dev: Starting Metro Bundler
@acme/expo:dev: node:fs:2352
@acme/expo:dev: return binding.writeFileUtf8(
@acme/expo:dev: ^
@acme/expo:dev:
@acme/expo:dev: Error: EACCES: permission denied, open '/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/apps/expo/.gitignore'
@acme/expo:dev: at Object.writeFileSync (node:fs:2352:20)
@acme/expo:dev: at Object.upsertGitIgnoreContents (/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/node_modules/@expo/cli/build/src/utils/mergeGitIgnorePaths.js:109:21)
@acme/expo:dev: at Object.startTypescriptTypeGenerationAsync (/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/node_modules/@expo/cli/build/src/start/server/type-generation/startTypescriptTypeGeneration.js:44:39) {
@acme/expo:dev: errno: -13,
@acme/expo:dev: code: 'EACCES',
@acme/expo:dev: syscall: 'open',
@acme/expo:dev: path: '/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/apps/expo/.gitignore'
@acme/expo:dev: }
@acme/expo:dev:
@acme/expo:dev: Node.js v20.11.0
@acme/expo:dev:  ELIFECYCLE  Command failed with exit code 1.
@acme/expo:dev: ERROR: command finished with error: command (/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/apps/expo) /Users/gg/Library/pnpm/pnpm run dev exited (1)
@acme/expo:dev: Using src/app as the root directory for Expo Router.
@acme/expo:dev: Experimental path aliases feature is enabled. Learn more: https://docs.expo.dev/guides/typescript/#path-aliases
@acme/expo:dev: Starting Metro Bundler
@acme/expo:dev: node:fs:2352
@acme/expo:dev: return binding.writeFileUtf8(
@acme/expo:dev: ^
@acme/expo:dev:
@acme/expo:dev: Error: EACCES: permission denied, open '/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/apps/expo/.gitignore'
@acme/expo:dev: at Object.writeFileSync (node:fs:2352:20)
@acme/expo:dev: at Object.upsertGitIgnoreContents (/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/node_modules/@expo/cli/build/src/utils/mergeGitIgnorePaths.js:109:21)
@acme/expo:dev: at Object.startTypescriptTypeGenerationAsync (/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/node_modules/@expo/cli/build/src/start/server/type-generation/startTypescriptTypeGeneration.js:44:39) {
@acme/expo:dev: errno: -13,
@acme/expo:dev: code: 'EACCES',
@acme/expo:dev: syscall: 'open',
@acme/expo:dev: path: '/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/apps/expo/.gitignore'
@acme/expo:dev: }
@acme/expo:dev:
@acme/expo:dev: Node.js v20.11.0
@acme/expo:dev:  ELIFECYCLE  Command failed with exit code 1.
@acme/expo:dev: ERROR: command finished with error: command (/Users/gg/dev/projects/VASKE-APP/vaske-app-mono/apps/expo) /Users/gg/Library/pnpm/pnpm run dev exited (1)
kgni
kgniOP•11mo ago
2. Hot reloading Nextjs app Is it normal that it takes this long?
Liltripple_reid
Liltripple_reid•11mo ago
I used to have this problem on a project that used shadcn Zod t3 and lucide icons AFAIK I think it’s due to the nature lf the dependencies (bundle sizes) you’re using, I just created a blank project and it’s way smoother
kgni
kgniOP•11mo ago
This is from completely blank create-t3-turbo template
Liltripple_reid
Liltripple_reid•11mo ago
Oh Then I’m not really sure what the actual problem could be Sorry man
kgni
kgniOP•11mo ago
No worries mate, thank you for your input!
Yiannis
Yiannis•11mo ago
Hot reloading is quite standard, similar waiting time for me as well.
kgni
kgniOP•11mo ago
coolio, good to know - thanks for th response mate!
Yiannis
Yiannis•11mo ago
One thing that helps in general is to not open all apps if not activelly working on it. Like go to the package jsons and just change the name of the dev script. Expo is really quire heavy i found.
kgni
kgniOP•11mo ago
In the example above I was running it with the filter flag to only run the nextjs app
Yiannis
Yiannis•11mo ago
Ah apologies I missed that
DiamondDragon
DiamondDragon•8mo ago
i'm getting this error too
Starting Metro Bundler
node:fs:453
return binding.readFileUtf8(path, stringToFlags(options.flag));
^

Error: EACCES: permission denied, open '/Users/am/app/apps/expo/.gitignore'
Starting Metro Bundler
node:fs:453
return binding.readFileUtf8(path, stringToFlags(options.flag));
^

Error: EACCES: permission denied, open '/Users/am/app/apps/expo/.gitignore'
cogdancer
cogdancer•8mo ago
I had a similar error due to weird permissions on expo/.gitignore, so I just fixed the permissions: chmod 644 ./apps/expo/.gitignore. That resolved the problem.
Want results from more Discord servers?
Add your server