< back_to_blog

Winnom 1.1.0: Python walks in, Network IO walks out

Announcement
Winnom 1.1.0: Python walks in, Network IO walks out

# Winnom 1.1.0: Python walks in, Network IO walks out

CHKDSK Labs — August 2026

Winnom started life doing one thing: telling you which node.exe owns port 3000 and letting you kill it before it kills you. That part hasn't changed. What's changed in 1.1.0 is that Winnom now speaks a second language.

## Python monitoring, for real

The Python tab is not a lite mode. It's full parity with Node: framework detection for Django, Flask, Uvicorn, Gunicorn, Celery, Jupyter, Streamlit, pytest and friends, plus listening ports, CPU, memory, uptime, reveal-in-Explorer, and the process-tree kill button.

It also handles a Windows-specific gotcha that bit us during development: if you installed Python from the Microsoft Store, your interpreter doesn't run as python.exe. It runs as python3.13.exe, quietly, where most process monitors never think to look. Winnom watches the versioned names too, so Store Python users get the same coverage as everyone else.

## Tabs in the title bar

Languages now live as tabs up in the title bar — click between Node and Python like browser tabs. Only the active tab spends CPU scanning; the inactive one sits paused with warm caches, so switching back is instant and idle cost stays near zero. The title bar was just sitting there. Now it earns its keep.

## The honest paywall

Node monitoring is free. It was free in 1.0, it's free now, and it stays free.

Python is a one-time $4.99 unlock — a durable Microsoft Store add-on, not a subscription. You buy it once and it's yours on every machine your Microsoft account touches.

We spent a while on how the locked state should feel, because most trial paywalls are either a screenshot pretending to be an app or a nag wall. Winnom's locked Python tab is a live preview of your machine: every real Python process shows up with its name, label, and detected framework. The metrics and PIDs are blurred and the kill/reveal buttons are disabled, but the data underneath is real. If the tab looks useful, that's because it already is — buying the unlock un-blurs everything on the spot, no restart, no re-launch.

## What we removed (and why)

Network IO monitoring is gone. Per-process network throughput on Windows requires an ETW kernel session, and an ETW kernel session requires elevation that a Microsoft Store package can never request. That left us shipping two builds so that one of them could show a column half our users would never see. That's a bad trade. The feature is retired, the TraceEvent dependency went with it, and the app is lighter for it.

The direct-download build is gone too. Winnom used to ship both a Gumroad download and a Store package. Two channels meant two builds, two update paths, and two ways for them to drift apart. As of 1.1.0 the Microsoft Store MSIX is the only distribution channel. One build, one truth, and updates arrive without you thinking about them.

## Under the hood: MonitorProfile

The real work of 1.1.0 was invisible. Everything language-specific — process names, WMI filters, classifier rules, the add-on token — now lives in a single MonitorProfile definition. Node is a profile. Python is a profile. Adding a language went from "surgery across the codebase" to "one profile entry plus a Partner Center listing."

Which is our way of saying: Rust is penciled in for 1.2. The cargo and long-running rust-analyzer processes on your machine have been warned.

## Get it

Winnom 1.1.0 is live on the Microsoft Store now. Existing installs update automatically. Node monitoring is free forever; the Python unlock is $4.99, once.

If it saves you one "why is port 8000 busy" incident, it's paid for itself.