VYTRIX
GitHub Live demo

Zyvor · system monitor

See what your machine is really doing.

A read-only system activity monitor for macOS and Linux. Applications grouped the way you think about them, processes, listening ports, project folders, and Docker and Podman containers, in a Liquid Glass or Adwaita window.

Try the live demoDownload for MacRun it yourself

Read-onlyIt watches. It never kills, signals or changes anything.
Dependency-free collectorOne Python file, standard library only.
Local-firstTokens stay in the tab. History stays on your disk.
Honest numbersApp memory is RSS. Not collected means absent, not zero.

Built for the questions you actually ask

Which app is it?

Processes grouped by executable or .app bundle, with CPU and memory per application and a process sheet one click away.

Which container?

Docker and Podman side by side: state, CPU, memory against its limit, network I/O and published ports, from read-only CLI calls.

What is on port 5173?

Listening ports tied to the application and its project folder, so a stray dev server is easy to find.

Tell me when

Threshold alerts on CPU, memory, disk and containers, with a level you set. No notifications you did not ask for.

What happened earlier?

Activity history in the tab, and 30 days of samples in a 0600 SQLite file that the collector serves over an authenticated API.

Safe to leave running

Bearer token, exact CORS origin, HTTPS. No mutations in the API: it cannot do anything to the machine.

Twelve seconds

Vytrix: overview, an application's processes, containers, switching to the Adwaita window style, then dark mode
Overview, an application's processes, containers, then the Adwaita style and dark mode. Do it yourself.

A browser, a collector, your machine

A web page cannot read your processes, so a small collector does, read-only, and the dashboard polls it over HTTPS. Without one, the dashboard shows clearly labeled simulated telemetry.

The dashboard talks to a read-only collector over HTTPS with a bearer token; the collector reads the host. macOS launchd, Linux systemd, remote Linux in one command, Docker and Podman.

Download for Mac

The native SwiftUI app with the collector bundled: it starts it on loopback with a token held in memory, read-only like everything else. Signed with a Developer ID but not yet notarized: on first launch, open System Settings → Privacy & Security and choose Open Anyway. Apple silicon, macOS 26 or newer; the collector needs Python 3.10+ (Homebrew's, since the system /usr/bin/python3 is 3.9).

Download Vytrix 0.3.0 (DMG)Release notes, SHA-256 and the collector archive

Quickstart

Node 22.13 or newer. npx pnpm@11.25.0 … works without installing pnpm.

git clone https://github.com/zyvorai/zyvor-vytrix.git && cd zyvor-vytrix
npx pnpm@11.25.0 install --frozen-lockfile
npx pnpm@11.25.0 dev            # http://localhost:5173, simulated telemetry

Your own readings, offline (Python 3.10+, no root), then Connect → Import collector snapshot:

python3 agent/vytrix.py --once > snapshot.json

Live telemetry from a collector on this machine:

export VYTRIX_TOKEN="$(python3 -c 'import secrets; print(secrets.token_urlsafe(32))')"
python3 agent/vytrix.py --allow-origin http://localhost:5173

One command to a Linux server

./scripts/deploy-remote.sh 203.0.113.10 deploy      # HOST USER, or user@host

It syncs the checkout over SSH, builds it on the host, and installs two systemd units: the dashboard on loopback and the collector on https://HOST:30847 with a self-signed certificate, proxying the dashboard. Open the URL, accept the certificate, Connect, and paste the token. For a Mac or a laptop, scripts/install-macos.sh (launchd, token in the Keychain) and scripts/install-linux.sh (systemd) install the collector as a service.

Vytrix reads processes, ports, resources and containers. It never kills, signals or changes anything.

The dashboard has no login of its own: put it behind your own access control. What the collector token protects, and what it does not, is in SECURITY.md.