
Product
Introducing Socket Firewall Enterprise: Flexible, Configurable Protection for Modern Package Ecosystems
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.
@layerzerolabs/ignore-monorepo-buildstep
Advanced tools
A package that adds monorepo support for Vercel's "Ignore build-step" setting. Small, fast, with 0 external dependencies.
By default, when working in a monorepo, each push triggers Vercel to rebuild all the projects even when changes were introduced only to some of them. It takes time and blocks the build pipeline for your team. Thanks to @typeofweb/ignore-monorepo-buildstep, this is no longer a problem – Vercel becomes smarter and only rebuilds what needs building!
In a real-life project such as saleor/react-storefront, we've saved up to 85% on Vercel build times – 6.6x speedup! @typeofweb/ignore-monorepo-buildstep helps you save time and money.
Assume we're using pnpm workspaces and we have the following monorepo structure:
.
├── apps
│  ├── a
│  └── b
└── packages
├── common
└── depA
Apps a and b both depend on the common package. Moreover, app a depends on depA package.
Add the following command to the "Ignore Build Step" section in your Vercel project settings:
npx @typeofweb/ignore-monorepo-buildstep

By default, ignore-monorepo-buildstep will compare HEAD^ and HEAD. You can override this and use an env variable exposed by Vercel:
npx @typeofweb/ignore-monorepo-buildstep $VERCEL_GIT_PREVIOUS_SHA
When any changes are introduced to packages/common, both apps a and b will be built:

However, when packages/depA is modified, only apps/a is built while apps/b is skipped:

Moreover, deployment statuses are reported as successful even when builds are skipped:

@typeofweb/ignore-monorepo-buildstep analyses the structure of the monorepo. It reads pnpm-workspace.yaml and package.json of every package, and creates a tree of dependencies inside the monorepo.
Then, it proceeds to check whether the given package or any of its dependencies were modified since the last commit with the use of git diff "HEAD^" "HEAD" --quiet.
Currently, only pnpm and yarn workspaces are supported but more is on the roadmap.
FAQs
Ignore Vercel buildstep in a pnpm monorepo
We found that @layerzerolabs/ignore-monorepo-buildstep demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 16 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.

Security News
Open source dashboard CNAPulse tracks CVE Numbering Authorities’ publishing activity, highlighting trends and transparency across the CVE ecosystem.

Product
Detect malware, unsafe data flows, and license issues in GitHub Actions with Socket’s new workflow scanning support.