Freedom251 › Monorepo Management Tools
Syncpack

What Syncpack is
Syncpack is a free, open-source command-line tool for keeping dependency versions consistent in JavaScript monorepos and across projects split among multiple Git repositories. It finds and fixes mismatches, enforces one version policy, or applies separate policies to repository partitions. Rules can pin or ban dependencies and require exact or loose semver ranges. Syncpack checks the npm registry for outdated packages and can update latest, minor, or patch versions, with filters for dependency names and types. It supports pnpm and Bun catalogs, including migration and catalog version updates, and can sort and format package.json files. Workspace discovery covers npm, Yarn, pnpm, and Lerna, or configured source patterns. Configuration may use JSON, YAML, JavaScript, TypeScript, or supported package.json properties. A dry-run update previews changes without writing files. A minimum release-age setting can exclude newer versions; its default is 1440 minutes when no project pnpm setting applies. It runs on Linux, macOS, and Windows.
Who it suits
Syncpack suits JavaScript teams maintaining large monorepos or coordinated package.json files across several repositories. It is useful when dependency policies, catalog updates, formatting, and cautious release timing matter.
What it does well
- Open-source and free
- Finds and fixes dependency mismatches
- Supports npm, pnpm, Yarn, and Bun
- Dry-run mode previews updates
- Minimum release-age setting reduces supply-chain risk
What to know first
- Command-line workflow
- Focused on JavaScript package repositories
- No free trial is listed
Verdict
Syncpack provides policy control and version maintenance for JavaScript dependency collections. Its workspace discovery, catalog support, dry runs, and release-age filter cover both routine updates and cautious repository management.
Facts from Syncpack's own pages
- Catalogs
- It can migrate repositories to pnpm or bun catalogs and bump outdated versions in catalogs. · syncpack.dev, 4 Oct 2026
- Catalog support
- It can migrate repositories to pnpm or Bun catalogs and update versions in those catalogs. · syncpack.dev, 11 Oct 2026
- Configuration
- Syncpack accepts configuration in JSON, YAML, JavaScript, or TypeScript files, as well as supported package.json properties. · syncpack.dev, 4 Oct 2026
- Dependency policies
- Syncpack can pin dependencies to specific versions, ban dependencies, and define rules for exact or loose semver ranges. · syncpack.dev, 11 Oct 2026
- Dependency rules
- It can pin or ban dependencies and define rules for exact or loose semver ranges. · syncpack.dev, 4 Oct 2026
- Dependency updates
- It can find outdated dependency versions in the npm registry and update package files to use newer versions. · syncpack.dev, 11 Oct 2026
- Formatting
- Its format command sorts package.json fields into a consistent order and alphabetizes nested fields without changing version numbers. · syncpack.dev, 11 Oct 2026
- Install
- The official site recommends installing Syncpack as a project dev dependency with npm install syncpack --save-dev. · syncpack.dev, 11 Oct 2026
- Installation
- The documentation recommends installing Syncpack as a project devDependency so collaborators use the same version. · syncpack.dev, 4 Oct 2026
- Intended users
- The documentation describes it as a tool for JavaScript monorepos and also explains how to use it across projects split among multiple Git repositories. · syncpack.dev, 4 Oct 2026
- Mismatch checks
- It can find and fix dependency version mismatches. · syncpack.dev, 4 Oct 2026
- Package manager discovery
- It can locate project package.json files through npm, Yarn, pnpm, or Lerna workspace configuration, or use configured file patterns. · syncpack.dev, 11 Oct 2026
- Polyrepo use
- The source configuration can target package.json files across multiple cloned repositories, so Syncpack can also be used without a monorepo. · syncpack.dev, 11 Oct 2026
- Preview changes
- The update command supports dry-run mode, which behaves as if it were applying updates but does not write to disk. · syncpack.dev, 11 Oct 2026
- Product
- Syncpack is a command-line tool for keeping dependency versions consistent in large JavaScript monorepos. · syncpack.dev, 11 Oct 2026
- Purpose
- Syncpack is a command-line tool for keeping dependency versions consistent in large JavaScript monorepos. · syncpack.dev, 4 Oct 2026
- Security feature
- Its update command can ignore package versions published more recently than a configured age threshold to reduce supply chain attack risk; the default is 1440 minutes when no project pnpm setting applies. · syncpack.dev, 4 Oct 2026
- Supply chain setting
- Syncpack excludes versions newer than the configured minimumReleaseAge by default to reduce supply chain attack risk. · syncpack.dev, 11 Oct 2026
- Try it
- The documentation says the quickest way to try Syncpack is with npx. · syncpack.dev, 4 Oct 2026
- Update scope
- The update command can target latest, minor, or patch versions and can filter by dependency name and dependency type. · syncpack.dev, 11 Oct 2026
- Users
- The official site lists AWS, Cloudflare, DataDog, Electron, Microsoft, Salesforce, and Vercel among Syncpack users. · syncpack.dev, 11 Oct 2026
- Version consistency
- It finds and fixes dependency version mismatches and can enforce one version policy or separate policies for different groups. · syncpack.dev, 11 Oct 2026
- Version policies
- It can enforce one version policy or apply separate policies to partitions of a repository. · syncpack.dev, 4 Oct 2026
- Workspace discovery
- It can discover package.json files using npm or Yarn workspaces, pnpm workspace configuration, or Lerna; users can also configure source patterns. · syncpack.dev, 4 Oct 2026
Where Syncpack stands on Freedom251
- Monorepo Management Tools#28 of 33