crun
Concurrent Run
A Rust port of concurrently — run commands concurrently.
crun is useful when you need to do something like start a web server for your backend and frontend at the same time, and you want the logs streamed to you in such a way that you can easily tell which logs came from which service. You can use ctrl-c to kill all the services at the same time.

Installation
# Homebrew
# Cargo
Usage
# Run two commands concurrently
# Name processes and colorize output
# Kill all processes when one exits
# Kill others only on failure
Cross-platform
crun should work on windows, mac and unix.
I only use it on mac so please file issues if it does not work on your platform
Options
General:
-n, --names <NAMES> Comma-separated names for each process
--name-separator <SEP> Character to split names on (default: ,)
-s, --success <CONDITION> Exit condition: all, first, last (default: all)
-r, --raw Output raw process output, no prefixes
--no-color Disable colored output
--hide <PROCESSES> Hide output from processes (by index or name)
-g, --group Group output per process (buffer until exit)
--timings Show timing information for all processes
-P, --passthrough-arguments Pass arguments after -- as placeholders
Prefix styling:
-p, --prefix <TYPE> Prefix type: index, pid, time, command, name, none
-c, --prefix-colors <COLORS> Comma-separated colors (auto, red, green.bold, etc.)
-l, --prefix-length <N> Max prefix length for command names (default: 10)
--pad-prefix Pad all prefixes to the same length
Kill others:
-k, --kill-others Kill other processes when one exits
--kill-others-on-fail Kill others only if one exits with non-zero code
Input:
-i, --handle-input Forward stdin to child processes
--default-input-target <N> Default process to receive stdin (default: 0)
Restart:
--restart-tries <N> Restart failed processes N times (negative = infinite)
--restart-after <MS> Delay before restart in milliseconds
Teardown:
--teardown <CMD> Command to run after all processes exit (repeatable)
Colors
Use -c auto to automatically color each process prefix, or specify colors per process:
Supported colors: black, red, green, yellow, blue, magenta, cyan, white, grey/gray, plus Bright variants (e.g. greenBright) and background variants (e.g. bgRed, bgCyanBright).
Modifiers: bold, dim, italic, underline, inverse, strikethrough.
Combine with dot notation: red.bold, bgBlue.white.
Development
License
MIT