ssap_app/node_modules/resolve-workspace-root
ananyak19 f0453fc9f0 first commit 2026-01-18 17:57:34 +05:30
..
build first commit 2026-01-18 17:57:34 +05:30
LICENSE.md first commit 2026-01-18 17:57:34 +05:30
README.md first commit 2026-01-18 17:57:34 +05:30
package.json first commit 2026-01-18 17:57:34 +05:30

README.md

resolve-workspace-root

Resolve the root of a workspace using bun, npm, pnpm, or yarn.

  • For bun, npm, and yarn - it looks for a parent package.json file, containing the workspaces config.
  • For pnpm - it looks for a package.json and pnpm-workspaces.yaml file, containing the workspaces config.

🚀 How to use it

This package supports both synchronous and asynchronous lookups.

import { resolveWorkspaceRoot, resolveWorkspaceRootAsync } from 'resolve-workspace-root';

// Synchronous lookup, supporting bun, npm, pnpm, and yarn
const workspaceRoot = resolveWorkspaceRoot(__dirname);
// Synchronous lookup, supporting only bun, npm, and yarn
const workspaceRoot = resolveWorkspaceRoot(__dirname, { packageWorkspaces: false });
// Synchronous lookup, supporting only pnpm
const workspaceRoot = resolveWorkspaceRoot(__dirname, { pnpmWorkspaces: false });

// Asynchronous lookup, supporting bun, npm, pnpm, and yarn
const workspaceRoot = await resolveWorkspaceRootAsync(__dirname);
// Asynchronous lookup, supporting only bun, npm, and yarn
const workspaceRoot = await resolveWorkspaceRootAsync(__dirname, { packageWorkspaces: false });
// Asynchronous lookup, supporting only pnpm
const workspaceRoot = await resolveWorkspaceRootAsync(__dirname, { pnpmWorkspaces: false });

import { getWorkspaceGlobs, getWorkspaceGlobsAsync } from 'resolve-workspace-root';

// Synchronous lookup, supporting bun, npm, pnpm, and yarn
const workspaces = getWorkspaceGlobs(resolveWorkspaceRoot(__dirname));
// Asynchronous lookup, supporting bun, npm, pnpm, and yarn
const workspaces = await getWorkspaceGlobsAsync(resolveWorkspaceRoot(__dirname));

with ❤️  Cedric