'How to deploy monorepo powered by turborepo to Vercel?
Recently, Turborepo is acquired by Vercel. So I was excited to experiment with that. I created a turbo repo project by running
pnpx create-turbo
Then I tried to deploy it to Vercel following the documentation here.
It is failing with error "could not found tsconfig/nextjs.json"
Solution 1:[1]
The error was actually caused at tsconfig.json file inside the web module.
The structure of the repo is as follows
- apps
- docs
- web
- packages
- config
- tsconfig
- ui
The content of apps/web/tsconfig.json
is
{
"extends": "tsconfig/nextjs.json",
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
"exclude": ["node_modules"]
}
Ideally, it should have been able to work as turbo should understand that.
I could finally deploy the web
project with following settings on Vercel
ROOT DIRECTORY: /app/web
BUILD COMMAND: cd ../.. && yarn build
INSTALL COMMAND: cd ../.. && yarn install
Update: (Answer from comments and updated docs)
- you need to override the Install Command with npm install --prefix=../.. (step 3.5).
Solution 2:[2]
Please upvote Camilo's comment under mayank1513's post as the source (I'm just reposted for visibility and I didn't see it at first and wasted several hours)
If you're using NPM on Vercel with Turborepo please follow this step from Vercel. If you don't you'll get build errors saying roughly "can't find package".
Hope this helps!
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | |
Solution 2 | athammer |