Did you know that you can run @pnpmjs in WebContainers? And it's up to 4x faster than on local? No kidding! 🪄 🧙♂️ 🏎
If you wanna know more about pnpm, @SylwiaVargas wrote a wonderful article about it that also explains why pnpm is so fast in general 👏 dev.to/stackblitz/what-is-pn…
So what is the deal with pnpm?
@SylwiaVargas has just published this thorough but super approachable(!) post that covers an intro into the world of packagers and a practical explanation of why @pnpmjs really shines in the js ecosystem! dev.to/stackblitz/what-is-pn…
This is a great introduction to monorepos from @juristr
By the end of this course, you will know several features from pnpm and Nx, and have a basic understanding of the monorepo architecture.
bit.ly/3CtRkKJ
In my next tech blog post for @hotjar I'll talk about @pnpmjs.
Spoiler alert: do the switch. Now!
ALT Table comparing npm vs pnpm in terms of disk space usage and installation time:
Docker image size:
npm 4.08GB vs pnpm 2.54GB
node_modules size:
npm 3.2GB vs pnpm 1.3GB
Installing without cache and node_modules:
npm ~5min vs pnpm ~1min 30sec
Installing with cache but without node_modules:
npm ~5min vs pnpm ~48sec
Installing with cache and node_modules:
npm ~1min vs pnpm ~8sec
Keep an eye out for Storybook 7.0. We're working on better pnpm support, and react-ts, vite, & storybook already work well together. Here's a pnpm workaround for now: github.com/storybookjs/build…
#pnpm radically simplified my js toolchain :
- integrated dependency updates
- Adios #nvm - pnpm handles automatic installation and usage of the required NodeJS version
- perfect monorepo/workspace support
Love it ♥️
The perfect counterpart with #make
You cannot update some of your deps because they support ESM only? No problem, with pnpm v7.13 you may declare a list of packages that should be ignored by the "outdated" and "update" commands.
pnpm.io/package_json#pnpmupd…
so install time went down from ~3 minutes with npm to 30 seconds with pnpm 🤷♂️
I think it's mainly because with npm, we couldn't use `npm ci` because it wouldn't install in all packages correctly (so we did npm i), but pnpm i --frozen-lockfiles works great
This weekend I've switched over to @pnpmjs on my personal projects. I do need that disc space.
We've been using PNPM at work for some time so my first impression is not actually the first one. But I like it.
pnpm downloads are 8 times higher than they were a year ago.
Starting to think of this as my default package installer. Was not expecting to love it as much as I do.
npmjs.com/package/pnpm