Setup a monorepo with PNPM workspaces and add Nx for speed

Juri Strumpflohner
Published
Deep dive session where @juristr walks you through setting up a new monorepo with PNPM workspaces, adds a Remix app and a shared React library to it, and then adds Nx on top for improved task execution speed, caching, and more.
▬▬▬▬▬▬ ⏱ Timecodes ▬▬▬▬▬▬
- 0:00 Intros
- 0:46 Creating the monorepo folder structure
- 3:10 Setup a PNPM workspace
- 4:16 Add a Remix app
- 6:14 Run commands from the monorepo root
- 7:00 Create a shared React library
- 11:40 Consume the shared lib from the Remix app
- 14:08 Running commands with PNPM
- 14:42 Recap 1st part
- 16:01 Installing Nx
- 16:46 Using Nx to run commands
- 17:37 Caching operations
- 19:35 Fine-tuning cache inputs
- 22:48 Defining namedInputs
- 24:43 Defining task dependencies aka build pipelines
- 27:14 Only run commands for packages that changed
- 31:10 Terminal output improvements when using Nx
- 32:16 Wrapping up
▬▬▬▬▬▬ 🔗 Links ▬▬▬▬▬▬
- Docs: https://nx.dev
- Blog: https://dev.to/nx/setup-a-monorepo-with-pnpm-workspaces-and-speed-it-up-with-nx-1eem
- GitHub: https://github.com/nrwl/nx
- Discord Community: https://go.nx.dev/community