Home ci 09. deployments / builds: Package Managers

09. deployments / builds: Package Managers

Last updated on Aug 05, 2025

Package Managers

Epycbyte supports various package managers for dependency management, ensuring optimal build performance. This guide outlines the supported package managers, how they are detected, and how you can manually specify a package manager for your project or deployments.

Supported Package Managers

The following table lists the package managers supported by Epycbyte, along with their install commands and versions:

Package Manager Lock File Install Command Supported Versions
Yarn yarn.lock yarn install 1
npm package-lock.json npm install 8, 9, 10
pnpm pnpm-lock.yaml pnpm install 6, 7, 8, 9
Bun bun.lockb bun install 1

Epycbyte automatically detects the package manager based on the presence of a lock file in your project. If no lock file exists, it defaults to npm.

Manually Specifying a Package Manager

You can manually specify a package manager for your project or deployments. Here's how:

Project Override

To specify a package manager for all deployments in your project:

  1. Navigate to your project on the Epycbyte dashboard.
  2. Select the Settings tab.
  3. Enable the Override toggle in the Build & Development Settings section.
  4. Add your install command (e.g., pnpm install).
  5. Save changes, and the specified package manager will be used on your next deployment.

Deployment Override

To specify a package manager for a single deployment:

  1. Modify your epycbyte.json file in your project root.
  2. Add an installCommand property with the desired command (e.g., "pnpm install").
  3. Epycbyte will use the oldest available version of the specified package manager during the build.

Version Compatibility

The specific version of a package manager used depends on the lock file's lockfileVersion:

  • For npm and pnpm, this is specified in their respective lock files.
  • For example, pnpm-lock.yaml with lockfileVersion: 9.0 uses pnpm 9.

If no version is specified, Epycbyte defaults to using the latest compatible version based on Node.js versions.

Conclusion

Epycbyte simplifies dependency management by automatically detecting and using the appropriate package manager. For more details or assistance, feel free to ask!