| Crates.io | ntw |
| lib.rs | ntw |
| version | 0.2.1 |
| created_at | 2026-01-10 01:06:28.732541+00 |
| updated_at | 2026-01-10 23:55:19.138413+00 |
| description | A macOS network toolkit providing live speed metrics and simple interface management. |
| homepage | https://github.com/alexandretrotel/ntw |
| repository | https://github.com/alexandretrotel/ntw |
| max_upload_size | |
| id | 2033258 |
| size | 39,306 |
A macOS network toolkit providing real-time speed metrics and simple Wi‑Fi interface management.
ntw is a fast, minimal CLI utility focused on two things:
It is written in Rust, async-first, and designed to feel native to the macOS command line.
auto, bps, kbps, mbps, gbpsauto) for readable displays--dry-run mode to preview actions safelyntw relies on macOS system tools such as networksetup and route.
git clone https://github.com/alexandretrotel/ntw.git
cd ntw
cargo install --path .
cargo install ntw
# or
cargo binstall ntw
ntw speed
By default:
en0 or eth0)auto (automatically selects bps/kbps/Mbps/Gbps for readable output)You can change the update interval with the --delay option:
ntw speed --delay 500
The displayed throughput is normalized to "per second" regardless of the actual interval.
ntw speed --iface en1 --unit mbps
If you prefer automatic, explicit auto shows the best unit for the current value:
ntw speed --unit auto
Example output:
↓ 85.42 Mbps ↑ 12.03 Mbps
auto chooses unitsWhen --unit auto (or the default) is used, ntw selects the most appropriate unit based on the measured bits/second using SI (decimal) thresholds:
bps (e.g., 512 bps)kbps (e.g., 12,345 Kbps)Mbps (e.g., 85.42 Mbps)Gbps (e.g., 1.23 Gbps)Formatting rules are chosen to balance precision and readability (for example, small Mbps values show more decimals while large values are compact). You can override auto by passing any of --unit bps|kbps|mbps|gbps.
Note: Networking commonly uses decimal SI prefixes: 1 kbps = 1,000 bps; 1 Mbps = 1,000,000 bps.
ntw list
With explicit interface:
ntw list --iface en0
ntw remove --ssid MyWifi
ntw remove
You will be prompted to select one or more networks to remove.
All network-modifying commands support --dry-run:
ntw remove --ssid MyWifi --dry-run
Output example:
[dry-run] Would remove network 'MyWifi' from interface 'en0'
No system changes are made.
See CHANGELOG.md for details about recent changes (including the addition of auto unit selection and top-level list/remove commands).
Issues and PRs are welcome: https://github.com/alexandretrotel/ntw/issues
See LICENSE for details.