multipack

A tool for monorepo management. Link local packages and execute commands in topological order.

MIT License PRs Welcome Watch on GitHub Star on GitHub Watch on GitHub Discord

This repo comes with an unpublished tool called multipack. To activate it run the following command.

pub global activate multipack

multipack provides a simple way of running commands in multiple packages at once. It builds a directed graph of packages to run commands in topological order.

Manage monorepo.

Usage: multipack <command> [arguments]

Global options:
-h, --help    Print this usage information.
-o, --only    Whitelist packages, skipping those not included for this command.
              [multipack (default)]
-s, --skip    Blacklist packages for this command.
              [multipack]

Available commands:
  analyze   Run analyzer.
  exec      Execute any command.
  fmt       Run formatter.
  pub       Run pub.
  pubspec   Update pubspec.yaml

pubspec has 3 subcommands:

Available subcommands:
  bump-alpha      Bumps versions for alpha release.
  clean           cleans dependency overrides
  hard_override   overrides dependencies for local packages
  override        overrides dependencies for local packages
  sync-versions   Synchronizes dependency versions

Link all local packages by running

multipack pubspec override

Get all packages by running

multipack pub get

Clean up the pubspec file before publishing

multipack pubspec clean

Libraries

analyze
bump_alpha
clean
commands
common
exec
fmt
hard_override
override
package
pub
pubspec
sync_versions