withBuilderDevTools does not work in next.js turbo monorepo

I installed builder in our next.js 14 / app dir / turbo monorepo app.

It seems that whatever builder is doing it can’t handle the local workspace package references:

/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/packages/roji-domain-site-header/package.json

The roji-domain-site-header is the name of the package, which is local to our monorepo.

Please advise on how to fix this.

This is the error I get:

POST https://cdn.builder.io/api/v2/admin, duration: 325ms
GET https://cdn.builder.io/api/v3/data?limit=1&cachebust=true&collection=content&query.published.%24ne=archived&query.query.%24elemMatch.%24and%5B0%5D.property=urlPath&query.query.%24elemMatch.%24and%5B0%5D.operator=is&query.query.%24elemMatch.%24and%5B0%5D.value=%2Fbuilder-demo&query.modelId=e94d78511d5b4318a7ee3abdc6184f35&, duration: 418ms
createTsProgram Error: Invalid path: /Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/packages/roji-domain-site-header/package.json (7341)
    at y (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/node/index.cjs:1:3669)
    at Object.readFileSync (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/node/index.cjs:1:2311)
    at Object.readFile (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/core/index.cjs:22:431)
    at readJsonOrUndefined (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:17154:69)
    at readJson (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:17161:12)
    at getPackageJsonInfo (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:41203:34)
    at loadNodeModuleFromDirectory (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:41020:47)
    at nodeLoadModuleByRelativeName (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:40894:14)
    at tryResolve (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:40828:27)
    at nodeModuleNameResolverWorker (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:40746:16)
    at nodeNextModuleNameResolverWorker (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:40628:12)
    at node16ModuleNameResolver (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:40598:12)
    at resolveModuleName (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:40442:20)
    at Object.resolve (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:120213:48)
    at loadWithModeAwareCache (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:120253:40)
    at actualResolveModuleNamesWorker (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:120518:126)
    at resolveModuleNamesWorker (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:120899:22)
    at resolveModuleNamesReusingOldState (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:120994:16)
    at processImportedModules (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:122557:120)
    at findSourceFileWorker (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:122288:9)
    at findSourceFile (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:122152:22)
    at /Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:122101:24
    at getSourceFileFromReferenceWorker (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:122070:28)
    at processSourceFile (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:122099:7)
    at processRootFile (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:121897:7)
    at /Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:120631:43
    at forEach (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:55:24)
    at Object.createProgram (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/typescript/lib/typescript.js:120631:7)
    at go (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/core/index.cjs:22:1496)
    at $ (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/core/index.cjs:22:552)
    at async De (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/core/index.cjs:32:8328)
    at async W (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/core/index.cjs:32:8386)
    at async Bo (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/core/index.cjs:230:203)
    at async yn (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/core/index.cjs:32:10257)
    at async V (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/server/index.cjs:7:3226)
    at async j (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/server/index.cjs:7:4574)
    at async X (/Users/martinwawrusch/Dev/roji/monorepo/roji-monorepo/node_modules/@builder.io/dev-tools/server/index.cjs:199:985)

So I found a workaround. Naming the package: @repo/… vs … fixes the problem, eg. “@repo/roji-domain-site-header” vs “roji-domain-site-header”.

1 Like