Skip to main content

sysresource-monitor

CPU, RAM and per-drive disk usage on a small always-on-top toast that parks itself just above the system clock - and slides out of the way the moment your cursor comes near it.

🖥  System Resources                       61%
    CPU   6.2 of 8 cores idle   25°C       23%
          ▁▃▁▂█▁▂▁                             <- one bar per logical core
    RAM   6.7 GB free of 15.9 GB           58%
    CPU↑  python.exe                        7%
    RAM↑  studio64.exe   1.7 GB            11%
    C:    161.0 GB free of 350.9 GB        54%
    D:    62.2 GB free of 125.2 GB         50%
    G:    152.9 GB free of 350.9 GB        56%
    updated 23:23:24   every 5s   3 drives   % = in use

No config file, no HTTP server, no background service - a tray icon and a toast, plus a CLI for when you just want the numbers.

Install

pip install sysresource-monitor

Requires Python 3.11+, PySide6 for the toast and psutil for the numbers.

Use

sysresource-monitor                    # launch the tray toast
sysresource-monitor --interval 2       # ... sampling every 2 seconds
sysresource-monitor --all-mounts       # ... including mounts psutil hides
sysresource-monitor status             # print one sample as a table
sysresource-monitor status --json      # print one sample as JSON
sysresource-monitor status --swap      # include swap usage
sysresource-monitor status --watch     # redraw the table every 5 seconds
sysresource-monitor status --watch 2   # ... every 2 seconds instead
sysresource-monitor status --no-procs  # skip the top-consumer scan
sysresource-monitor status --no-temp   # skip the temperature query

Also runs as python -m sysresource_monitor [...], or on Windows via run_monitor.bat, which pins the py -3.13 launcher so a stray python on PATH can't pick an interpreter without PySide6 installed.

sysresource-monitor status needs no display, so it works over SSH or in a container.

What it shows

Each row pairs what is spare (in words, on the left) with what is in use (the percentage, on the right). Those are opposite quantities, so the left-hand text always names itself - idle, free - and the percentage column is labelled once, in the footer, as % = in use.

Row left: spare capacity right: in use
CPU 6.2 of 8 cores idle, plus temperature current load
core strip one bar per logical core per-core load
RAM 6.7 GB free of 15.9 GB memory in use
CPU↑ the process using the most CPU its share of the machine
RAM↑ the process using the most RAM, and how much its share of RAM
One row per fixed drive 161.0 GB free of 350.9 GB space in use

Per-process CPU is normalised by core count, so CPU↑ 25% means a quarter of the whole machine, the way Task Manager counts it - not a quarter of one core. The terminal view prints both figures.

The badge in the header is the highest pressure of all the rows, and it colours the whole card: green under 70%, amber from 70%, red from 90%. Each row's own percentage is coloured on the same scale, so a drive filling up stands out without you reading the numbers.

The temperature row is best-effort and is simply omitted when the platform won't answer - notably on macOS, and on Windows it is a chassis/zone reading rather than the CPU die.

Tray menu

  • Refresh now - resample immediately, disks included
  • Show toast / Hide toast
  • Quit

Single-click or double-click the tray icon to bring the toast back.

Licence

MIT - see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sysresource_monitor-0.2.4.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sysresource_monitor-0.2.4-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file sysresource_monitor-0.2.4.tar.gz.

File metadata

  • Download URL: sysresource_monitor-0.2.4.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.5

File hashes

Hashes for sysresource_monitor-0.2.4.tar.gz
Algorithm Hash digest
SHA256 b145199d880e9f16e002d856e84fef80a92be8d1b03bbe8a1bf7cd634878e353
MD5 cddd26607ccde5b12cd5c96d19ae00f8
BLAKE2b-256 b955abcb0a5327c44f68fe06c9d775cf0ff31c4d5099183d27370f65313deb51

See more details on using hashes here.

File details

Details for the file sysresource_monitor-0.2.4-py3-none-any.whl.

File metadata

File hashes

Hashes for sysresource_monitor-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 266706b7404a11249161fddce35054535b1f2580111256b63f6b322aa0b20ee6
MD5 49068a53e2d2317788fee786a693358a
BLAKE2b-256 3c7d6daded5a3d56cd0510b479308114120a6fe473735c4d65c627f9a53c3a30

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.4 This release

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page