Skip to content
SPECIFICTION
Get listed

affected vs manypkg

affected

github.com

manypkg

github.com

Side by side

Figureaffectedmanypkg
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
Plans published11
Spec score · Monorepo Management Tools8.1 (#10)8.4 (#3)
LicenseThe repository identifies the software as MIT licensed.The project is licensed under the MIT License.
Purposeaffected detects which monorepo packages are affected by Git changes and runs tests or other commands on those packages.Manypkg is a linter for package.json files in Yarn, npm, pnpm, Bun or Lerna monorepos.
SupportThe README welcomes contributions and directs users to the repository's GitHub issues.The opened project pages provided no dedicated support terms.

Plans

affected

  • affectedFree

affected pricing →

manypkg

  • ManypkgFree

manypkg pricing →

In their own words

affected

affected is a free, MIT-licensed command-line tool for identifying monorepo packages touched by Git changes and running tests or other commands on those packages. It traces transitive dependencies and can explain the chain from a change to an affected package. The README says it detects project type and dependency graph automatically to get started without configuration. Supported ecosystems include Cargo, npm, pnpm, Yarn, Bun, Go, Python, Maven, Gradle, .NET, Swift, Dart/Flutter, Elixir, and Scala/sbt. CLI commands cover listing packages, testing, running commands, viewing graphs, CI, initialization, and watch mode. Execution options include parallel jobs, dry-run previews, timeouts, package filters, and skip patterns. Outputs include JSON, JUnit XML, CI formats, shell completions, dependency trees, and DOT graphs. GitHub Actions support includes a setup action and dynamic job matrices; a companion action can post and update pull request comments with affected packages and reasons. Installation options include Homebrew, Python and language package managers, GitHub Actions, and release binaries. It runs on Linux, macOS, and Windows.

Visit github.com

manypkg

manypkg is a command-line linter for package.json files in Yarn, npm, pnpm, Bun, and Lerna monorepos. It checks consistency across packages, including matching external dependency ranges, internal dependency ranges that include the referenced package version, and alphabetical ordering of dependencies. Other checks cover peer and development dependency relationships, root production dependencies, duplicate dependency types, package names, and repository fields. The `manypkg check` command runs repository checks, logs errors, and exits with a code. When a problem can be corrected automatically, `manypkg fix` can apply a fix. The CLI also runs package scripts with `manypkg run`, selecting a package by partial name or directory, and runs a command across packages with `manypkg exec`. The root package.json can configure ignored rules, the default branch, and workspace protocol behavior; the protocol setting defaults to `allow`. Installation is documented with `yarn add @manypkg/cli`. The tool is free and licensed under MIT. Thinkmill is its maker, based in Sydney, Australia; listed platforms are Linux, macOS, and Windows.

Visit github.com