Turborepo integration with rushjs monorepo #301
-
Describe the feature you'd like to requestHello, in my team we maintain a RushJS monorepo, consisting of over 40 packages, and it really helped us move further from Lerna/Yarn monorepo setups. I found out about turborepo yesterday, and I wanted to try out some features (mostly the local and remote cache, and also the graph), but I find a hard time integrating it with our setup. RushJS uses pnpm under the hood, but it seems like turborepo uses specific hardlinks with specific files in order to integrate with a monorepo. Describe the solution you'd likeTurborepo could integrate with RushJS by configuring the location of the pnpm requirements (pnpm-workspace.yaml) and it could also either use a package.json only for its configuration, or use an external configuration file, like Describe alternatives you've consideredRushJS is very fluid in terms of integrations, I could explain thoroughly a basic integration guide, if needed, until to the point of running turbo commands, which is uncharted territory from that point forward. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
|
Turborepo works with pnpm workspaces. Rush and Turborepo are somewhat, if not directly, competitive tools. Although, Rush does more than just task running at the moment. The issue you'll face with moving from Rush are its rig files which avoid duplication of package.json content which turbo needs. To adopt turbo incrementally from rush, I believe you would need to re-establish all package.json's in their entirety. Then everything should work fine and turbo will be able to run tasks, even if rush is doing installation for the time being. The goal would be to remove Rush entirely and simply rely on PNPM for installation instead. Hope that helps. |
Beta Was this translation helpful? Give feedback.
Turborepo works with pnpm workspaces. Rush and Turborepo are somewhat, if not directly, competitive tools. Although, Rush does more than just task running at the moment.
The issue you'll face with moving from Rush are its rig files which avoid duplication of package.json content which turbo needs.
To adopt turbo incrementally from rush, I believe you would need to re-establish all package.json's in their entirety. Then everything should work fine and turbo will be able to run tasks, even if rush is doing installation for the time being. The goal would be to remove Rush entirely and simply rely on PNPM for installation instead.
Hope that helps.