Monitorify
A terminal montioring tool for linux
- Features
- CPU monitoring
- RAM monitoring
- Network monitoring
- Disk monitoring (I/O and storage capacity)
- Process monitoring
- Background daemon
- Customization menu (toggle widgets, set intervals, and change history window)
- Historical graphs
Requirements
- Python: 3.10+
- OS: Linux (relies on
/procand/sysfilesystems) - Terminal: Minimum 80 columns × 24 lines recommended
Installation
Using pipx
pipx install git+https://github.com/leonst036/Monitorify.git
Or from PyPI:
pipx install monitorify
Using pip
pip install git+https://github.com/leonst036/Monitorify.git
Using source
git clone https://github.com/leonst036/Monitorify.git
cd Monitorify
pip install .
Usage
monitorify
Background Daemon
The daemon collects metrics continuously to SQLite, even when the dashboard is closed.
Manually (foreground)
monitorify-daemon
Always-On via systemd --user
Create the service file at ~/.config/systemd/user/monitorify.service:
[Unit]
Description=Monitorify Metrics Collector Daemon
[Service]
ExecStart=%h/.local/bin/monitorify-daemon
Restart=always
[Install]
WantedBy=default.target
Enable and start it:
systemctl --user daemon-reload
systemctl --user enable --now monitorify
Check status or logs:
systemctl --user status monitorify
journalctl --user -u monitorify -f
Stop or disable:
systemctl --user stop monitorify
systemctl --user disable monitorify
File Locations
Monitorify follows XDG Base Directory conventions — nothing is written to the install directory.
| Purpose | Default Path | Override |
|---|---|---|
| Database | ~/.local/share/monitorify/monitorify.db |
MONITORIFY_DB_PATH env var |
| Daemon PID | /run/user/<uid>/monitorify/daemon.pid |
MONITORIFY_PID_PATH env var |
| Collection interval | 1.0 seconds |
MONITORIFY_INTERVAL env var |
| Data retention | 604800 s (7 days) |
MONITORIFY_RETENTION env var |
Remote
To use Monitorify remotely over SSH on your server, you can set the following parameters:
--ip– Set the target IP address.--port– Set the SSH port.--username– Set the username for the remote host.--password– Set the password for the SSH server.--key_filename– Set the path to an SSH key (optional).
Tech Stack
- Language & TUI: Python, Textual
- Database: SQLite
- Target OS: Linux
Uninstalling
# If installed via pipx
pipx uninstall monitorify
# Remove stored data
rm -rf ~/.local/share/monitorify
rm -rf /run/user/$(id -u)/monitorify
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 monitorify-1.0.3.tar.gz.
File metadata
- Download URL: monitorify-1.0.3.tar.gz
- Upload date:
- Size: 27.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a53f59f02643fc1ecc2c5bf04e9eba3bd8ff2cd085d176293dca774ecf5521b
|
|
| MD5 |
ed242fc10ea522ad48ebeb59010bfa7a
|
|
| BLAKE2b-256 |
5b5b732a48686a1b411cb94e9671d520893e9b71dbb4a2d576434e12bf7eff82
|
Provenance
The following attestation bundles were made for monitorify-1.0.3.tar.gz:
Publisher:
publish.yml on leonst036/Monitorify
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
monitorify-1.0.3.tar.gz -
Subject digest:
0a53f59f02643fc1ecc2c5bf04e9eba3bd8ff2cd085d176293dca774ecf5521b - Sigstore transparency entry: 2640109121
- Sigstore integration time:
-
Permalink:
leonst036/Monitorify@25b5d0ef3d718d3a429d5bcc896f3f1a4b2e73ed -
Branch / Tag:
refs/tags/v1.0.3 - Owner: https://github.com/leonst036
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@25b5d0ef3d718d3a429d5bcc896f3f1a4b2e73ed -
Trigger Event:
release
-
Statement type:
File details
Details for the file monitorify-1.0.3-py3-none-any.whl.
File metadata
- Download URL: monitorify-1.0.3-py3-none-any.whl
- Upload date:
- Size: 37.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
971b668f7ccb4bb3c07ac36b13bbe352f9a45664660b86c31f90c5f88386f043
|
|
| MD5 |
4b7831dda61001a299ab009a1b3e1f62
|
|
| BLAKE2b-256 |
dd3d71a05a6e00dd19c56df53686b918e0d14eb6cf81c116381b1bb3e0d044df
|
Provenance
The following attestation bundles were made for monitorify-1.0.3-py3-none-any.whl:
Publisher:
publish.yml on leonst036/Monitorify
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
monitorify-1.0.3-py3-none-any.whl -
Subject digest:
971b668f7ccb4bb3c07ac36b13bbe352f9a45664660b86c31f90c5f88386f043 - Sigstore transparency entry: 2640109148
- Sigstore integration time:
-
Permalink:
leonst036/Monitorify@25b5d0ef3d718d3a429d5bcc896f3f1a4b2e73ed -
Branch / Tag:
refs/tags/v1.0.3 - Owner: https://github.com/leonst036
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@25b5d0ef3d718d3a429d5bcc896f3f1a4b2e73ed -
Trigger Event:
release
-
Statement type: