A cyberpunk-themed terminal 3D cityscape process monitor
Project description
🌆 Zaibatsu Cityscape Process Monitor
Zaibatsu is an interactive, retro-cyberpunk terminal-based process monitor that represents running system processes as a living city skyline. The height, density, and animation of the buildings directly reflect how active and full your computer is.
🎨 Visual Features
- The Skyline (Processes): Each building represents a running process.
- Height: Proportional to the resource usage of the process (CPU % or Memory RSS).
- Windows: The density of lit windows and their blinking speed represent real-time CPU usage.
- Top Chimneys: Processes with high Disk I/O activity will release smoke or steam particles rising from their roofs.
- Neon Signs: The names of the processes are printed vertically down the center of the buildings.
- The Sky (System Load):
- Stars: Twinkle dynamically.
- Moon: Displays phases (Crescent, Half, Gibbous, Full) and warning colors based on overall RAM consumption.
- Clouds: Scroll horizontally with speeds mapped to background activity.
- Lightning: Flashes across the sky when system-wide CPU load exceeds 80%.
- The Street (I/O Traffic):
- Cars drive across the bottom lanes of the city.
- Car spawn rate and driving speed are mapped to overall Disk Read/Write and Network speeds.
- The Dashboard (TUI Control Panel):
- Shows real-time CPU and RAM progress bars.
- Displays Disk and Network speeds in B/s, KB/s, or MB/s.
- Displays full detail statistics of the currently highlighted building/process.
- Displays a terminal text filter/search bar.
🎮 Keyboard Controls
| Key | Action |
|---|---|
← / → / ↑ / ↓ or W / A / S / D |
Target/Highlight a building in the 2D grid |
C |
Sort city buildings by CPU usage |
M |
Sort city buildings by Memory usage |
F |
Open process name filter (type query, press Enter to apply, Esc to cancel) |
Space |
Pause / Resume real-time metrics updates (city animations stay active) |
K / Delete |
Demolish Building — terminates the selected process with an explosion and collapse animation! |
Q / Esc |
Shutdown Zaibatsu monitor |
🚀 Setup & Launch
Zaibatsu runs on Windows, macOS, and Linux, and requires a terminal that supports Unicode box characters and ANSI colors (e.g., Windows Terminal, VS Code, PowerShell, Command Prompt, or standard Unix terminal).
Installation
Option A: Install via pipx (Recommended)
pipx isolates Zaibatsu and its dependencies, making it available as a global command-line tool:
pipx install zaibatsu
Option B: Install via pip
You can install Zaibatsu directly from PyPI:
pip install zaibatsu
Once installed, launch it from any terminal:
zaibatsu
Or to demo
zaibatsu -d
You can customize themes (cyberpunk, matrix, sunset) and refresh rates:
zaibatsu --theme matrix --interval 0.2
Run from Source (Development)
1. Setup Virtual Environment
Initialize a Python virtual environment and install dependencies:
py -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
2. Run Zaibatsu Launcher
python run.py
🛠️ Project Structure
- run.py: CLI launcher script.
- zaibatsu/cli.py: Main terminal screen layout controller.
- zaibatsu/renderer.py: Cityscape layout drawing logic and animations.
- zaibatsu/monitor.py: System and process stats gathering using
psutil. - zaibatsu/input.py: Non-blocking keyboard event listening queue.
- zaibatsu/config.py: Theme declarations and scaling parameters.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zaibatsu-0.2.1.tar.gz.
File metadata
- Download URL: zaibatsu-0.2.1.tar.gz
- Upload date:
- Size: 38.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
11048ea03a4633c957d3db451a9a7e491a70639ecb339ce1d7fe566067fa7412
|
|
| MD5 |
90df664f68212037fd20d0e8701658e6
|
|
| BLAKE2b-256 |
f16657484c91726bdd699754740c31aefe361a59e202d3638943a25f35862ce9
|
Provenance
The following attestation bundles were made for zaibatsu-0.2.1.tar.gz:
Publisher:
release.yml on DIIZZYFPS/Zaibatsu
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
zaibatsu-0.2.1.tar.gz -
Subject digest:
11048ea03a4633c957d3db451a9a7e491a70639ecb339ce1d7fe566067fa7412 - Sigstore transparency entry: 1712785684
- Sigstore integration time:
-
Permalink:
DIIZZYFPS/Zaibatsu@7dddf00047e47d82164eeb79ee6b7e0fd4c91dae -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/DIIZZYFPS
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@7dddf00047e47d82164eeb79ee6b7e0fd4c91dae -
Trigger Event:
push
-
Statement type:
File details
Details for the file zaibatsu-0.2.1-py3-none-any.whl.
File metadata
- Download URL: zaibatsu-0.2.1-py3-none-any.whl
- Upload date:
- Size: 38.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4e05743fc975a97a9cde33c4e92649449576d3a4a7cf80c50eee5dd07905af8c
|
|
| MD5 |
0c695fb1ce0675d77eea042bf0a64110
|
|
| BLAKE2b-256 |
35422b1bf60922506d4a26d2e02e0ad4ee243b820f96f327f5f469dfc626a6cd
|
Provenance
The following attestation bundles were made for zaibatsu-0.2.1-py3-none-any.whl:
Publisher:
release.yml on DIIZZYFPS/Zaibatsu
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
zaibatsu-0.2.1-py3-none-any.whl -
Subject digest:
4e05743fc975a97a9cde33c4e92649449576d3a4a7cf80c50eee5dd07905af8c - Sigstore transparency entry: 1712785733
- Sigstore integration time:
-
Permalink:
DIIZZYFPS/Zaibatsu@7dddf00047e47d82164eeb79ee6b7e0fd4c91dae -
Branch / Tag:
refs/tags/v0.2.1 - Owner: https://github.com/DIIZZYFPS
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@7dddf00047e47d82164eeb79ee6b7e0fd4c91dae -
Trigger Event:
push
-
Statement type: