Back to Explore

unjs/nypm

GitHub
3 updates · last 90 days1 watchersOpen source

Last release:

nypm is a unified package manager tool for Node.js (npm, pnpm, yarn), Bun, and Deno, providing a single API and a unified CLI. It can autodetect the project’s package manager using package.json and lockfiles, and it supports actions like installing, adding/removing dependencies, running package scripts, and deduping.

Project status

  • Actively maintained: The source shows multiple updates in 2026, with the latest upstream push on 2026-06-28 and a recent tag v0.6.8 (2026-06-28), indicating ongoing development rather than maintenance mode.
  • Update cadence: Updates have been fairly regular recently, for example v0.6.8 on 2026-06-28, v0.6.7 on 2026-06-11 (about 2-3 weeks later), then v0.6.6 on 2026-04-24, v0.6.5 on 2026-02-05, and v0.6.4 on 2026-01-20.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • v0.6.8

    v0.6.8 adds support for the `nub` package manager and introduces detection via `devEngines.packageManager` in `package.json`. It also updates the command generation so `nub` is handled consistently across install, add, and dlx workflows.

    Features
  • v0.6.7

    v0.6.7 adds support for the aube package manager across the unified nypm command surface (install, add, dlx) and updates CLI detection/lockfile matching accordingly. The repo’s CI and test harness were also extended to install and exercise aube, with additional Windows flakiness controls. Beyond aube, this release includes several undocumented tooling and dependency changes.

    Features
  • v0.6.6

    v0.6.6 is described as a fix for resolving a dependency's package.json when the dependency is a pure ESM package. The code changes expand the internal package.json resolution strategy, including new helper functions and a different peerDependencies lookup flow in addDependency.

  • v0.6.5

    v0.6.5 primarily fixes dependency peer resolution by avoiding a direct require of a package.json path, plus migrates the project lint/format tooling from ESLint/Prettier to oxlint/oxfmt. The code diff also shows several behavioral edge-case changes around how peerDependencies are discovered, and updates dev tooling and dependency versions.

    Features
  • v0.6.4

    Release v0.6.4 mainly adds a missing CLI entry point to the build output. The only code changes shown are build configuration and a version bump, with no API or dependency-related modifications visible in the diff.

    Features
  • v0.6.3

    v0.6.3 focuses on smaller install size and build/tooling modernization. It also adds pnpm-specific workspace install controls and a new corepack toggle, while tightening types and simplifying the CLI output.

    BreakingFeatures
  • v0.6.2

    v0.6.2 adds the ability to pass custom environment variables to script execution, and introduces a new `dlx` API along with extending `dlxCommand` to support downloading additional packages via a `packages` option. The core implementation threads an `env` option through command execution and adjusts how the underlying package-manager command is constructed (notably for npm).

    Features
  • v0.6.1

    v0.6.1 adds a dry-run mode, improves CLI ergonomics (multiple package removal, passing extra args to runScript), and introduces command generator utility functions. Internally it also restructures the API to return an execution plan object (command and args) instead of only executing side effects.

    Features
  • v0.6.0

    v0.6.0 adds a new `runScript` utility and corresponding `nypm run` CLI command, plus several changes around command execution success detection and Yarn handling. The release also switches packaging to an ESM-only distribution and refactors internals by updating `pkg-types` and removing `ufo`.

    BreakingFeatures
  • v0.5.4

    v0.5.4 primarily adjusts corepack detection to better handle Stackblitz/webcontainer environments where corepack is not available. The release notes only mention the Stackblitz fix, but the actual diff also includes CI and dependency changes.

    Breaking
  • v0.5.2

    v0.5.2 is a small packaging change release. The only functional change shown in the diff is an update to the package.json `exports` map to improve TypeScript compatibility for both ESM (`import`) and CommonJS (`require`).

  • v0.5.1

    v0.5.1 enhances how nypm parses the packageManager field from package.json. It adds normalization (including handling build metadata separated by '+') and surfaces parsing issues as warnings that the CLI will log.

    Features