ื“ืœื’ ืœืชื•ื›ืŸ ื”ืจืืฉื™

Dependency Management

Managing dependencies in the Gauzy monorepo.

Package Managerโ€‹

Gauzy uses Yarn Classic (1.x) for dependency management:

# Install all dependencies
yarn install

# Add a dependency to root
yarn add package-name

# Add to a specific workspace
yarn workspace @gauzy/api add package-name

Workspace Structureโ€‹

Dependencies are defined at:

Levelpackage.json LocationPurpose
Root./package.jsonDev tools, shared deps
Appsapps/*/package.jsonApp-specific deps
Packagespackages/*/package.jsonLibrary deps

Common Issuesโ€‹

Hoisting Conflictsโ€‹

# If you get version conflicts
yarn install --check-files

# Force clean install
rm -rf node_modules
yarn install

Peer Dependency Warningsโ€‹

# Ignore peer dependency warnings for known issues
yarn install --ignore-optional

Dependency Auditโ€‹

# Check for vulnerabilities
yarn audit

# Check for outdated packages
yarn outdated

# Update a specific package
yarn upgrade package-name@latest

Lockfile Managementโ€‹

  • Always commit yarn.lock โ€” ensures reproducible builds
  • Never manually edit yarn.lock โ€” use yarn commands
  • Resolve merge conflicts โ€” use yarn install --force

Private Registryโ€‹

For private packages, configure Verdaccio:

# .npmrc
@ever-co:registry=https://packages.ever.co/
//packages.ever.co/:_authToken=${VERDACCIO_TOKEN}

See Private Registry Configuration for details.