Real‑time system monitor and task manager TUI
Project description
ChronoTasker
ChronoTasker is a real‑time system monitor and task manager built with Python and Textual. It provides a beautiful TUI dashboard that displays live CPU, RAM, GPU, storage, uptime, and disk usage, along with a process manager and user‑configurable modes.
Dashboard preview showing system metrics and process monitoring [citation:5].
✨ Features
- Live system metrics – CPU, RAM, GPU (real utilization when vendor libraries available), storage free space, system uptime, and disk load.
- Process manager – Automatically splits processes into "Apps" (>150 MB) and "Background" (≤150 MB) with live CPU/Memory updates.
- Three configurable modes:
- Safe Mode – Freezes data collection to save CPU.
- Debug Mode – Shows a debug log (e.g., detected GPU name).
- Beta Mode – Placeholder for experimental features.
- Memory cleaner – Triggers Python garbage collection; on Linux with superuser privileges, also drops kernel caches.
- Theme toggle – Switch between light and dark themes with a single key (
d). - GPU detection – Uses PyOpenCL to identify your GPU (displayed in debug log). Real utilization is attempted via
gpuinfo,pynvml, orpyadl, falling back to a random placeholder.
Settings panel with mode toggles [citation:2].
📦 Installation
From Source
git clone https://github.com/TheLostIdea1/chronotasker.git
cd chronotasker
pip install -e .
Direct Install (once published)
pip install chronotasker
Dependencies
- Required:
textual,psutil,pyopencl - Optional (for real GPU utilization):
gpuinfo– NVIDIA, AMD, Intelnvidia-ml-py– NVIDIA onlypyadl– AMD only
🚀 Usage
After installation, run:
chronotasker
Or from Python:
import chronotasker
chronotasker.start()
Key Bindings
| Key | Action |
|---|---|
h |
Jump to Help screen |
d |
Toggle dark mode |
q |
Quit the application |
📁 Project Structure
chronotasker/
├── chronotasker/
│ ├── __init__.py
│ └── app.py
├── tests/
│ └── test_app.py
├── LICENSE
├── README.md
└── setup.py
🤝 Contributing
Contributions are welcome! Please open an issue or submit a pull request.
📄 License
This project is licensed under the MIT License – see the LICENSE file for details.
Made with ❤️ by TheLostIdea1
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 chronotasker-0.1.0.tar.gz.
File metadata
- Download URL: chronotasker-0.1.0.tar.gz
- Upload date:
- Size: 11.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ddf492af2919b19133fa4589f361c6000ef012c12d39f4d1cbe1ce5707adb0d0
|
|
| MD5 |
1fac5bbe50c1264b5d626baeb9b43386
|
|
| BLAKE2b-256 |
15846cff9390604f0a061140797d02fe256769ccf1c0ef35ed3054feb0ce670b
|
File details
Details for the file chronotasker-0.1.0-py3-none-any.whl.
File metadata
- Download URL: chronotasker-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
784116e582b8a95211e6583ed232df26a8f4ccb0d0abd666e644ff499124fff5
|
|
| MD5 |
741b1312994261dd07b4946dc1261bd1
|
|
| BLAKE2b-256 |
d84860397f701fd9a177622f9ff2cff1710a01ba8004c82cfdca79cbfd2c1712
|