npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@foresite/netrack

v0.1.1

Published

Per-process network usage tracker with a desktop widget. Linux-only; requires Docker.

Downloads

34

Readme

netrack

Per-process network usage tracker for Linux, with a desktop widget. Shows which app/process used how much bandwidth, going forward.

netrack today         cumulative per-process totals (KB / MB / GB)
netrack watch         live terminal dashboard
netrack widget        on-screen desktop widget

Platform & prerequisites

  • Linux only. Per-process tracking reads /proc/<pid>/fd to map sockets to processes — a Linux-kernel capability that macOS/Windows do not expose the same way. macOS/Windows are unsupported for per-process tracking.
  • Docker (with your user in the docker group), or sudo. This is how it reads host process tables without root. The install script checks for it and explains how to set it up.

No nethogs binary is bundled. A container image containing nethogs is built from Alpine's packages on first use (see NOTICE for the GPL attribution).

Install

npm install -g @foresite/netrack

netrack start builds the container image on first run (one time), then the sampler begins tracking.

Usage

netrack                          # overview: sampler + widget + durability
netrack start                    # start the background sampler
netrack stop                     # stop the sampler (totals retained)
netrack status                   # sampler state + last sample time
netrack today                    # cumulative per-process totals
netrack top [N]                  # most active processes right now
netrack watch [N]                # live dashboard (Ctrl-C to quit)
netrack reset                    # zero the accumulated totals

# widget
netrack widget start             # show the desktop widget
netrack widget stop              # hide it
netrack widget status

The widget can be closed with a right-click (or dragged around with the left
button).

# durability — OFF by default (ephemeral)
netrack autostart on             # start sampler at boot + widget at login
netrack autostart off
netrack autostart status

By default netrack is ephemeral: it doesn't start on boot. Enable persistence with netrack autostart on (creates a @reboot cron entry for the sampler and a GNOME autostart entry for the widget). Disable anytime with netrack autostart off.

Entries whose process has exited are pruned from the totals on the next sample, so usage.txt stays small and netrack today always reflects currently-active processes.

Configuration

Config file: ~/.config/netrack/config. Values are KEY=VALUE; environment variables override file values.

| Key | Default | Purpose | |----------------|--------------|-------------------------------------------| | NETRACK_IF | wlo1 | Network interface to track | | AUTOSTART | 0 | Boot durability on/off | | WIDGET_CORNER| top-right | Widget default corner when not dragged |

Uninstall

netrack autostart off   # remove any cron/autostart entries
netrack stop
npm uninstall -g netrack
docker rmi netrack:latest   # optionally drop the container image

License

MIT (this project) — see LICENSE. Bundled runtime dependency nethogs is GPL-2.0-or-later; see NOTICE.