Pretty terminal utilities wrapped around rich: colorful progress bars, dict-to-table printing, and more.
Project description
prettyterm
Pretty terminal utilities wrapped around Rich: colorful progress bars, dict-to-table printing, colored logging, and more.
Installation
pip install prettyterm
Features
track() - tqdm-like Progress Bar
A clean, colorful progress bar wrapper around Rich's progress module. Drop-in replacement for tqdm with enhanced formatting.
Features:
- Progress bar with completion percentage
- Elapsed and remaining time
- Iteration speed (it/s)
- Dynamic postfix updates (string or dict)
- Auto-detects sequence length
from prettyterm import track
# Basic usage
for i in track(range(100), desc="Processing"):
# Your code here
pass
# With dynamic postfix
pbar = track(range(100), desc="Epoch 3")
for i in pbar:
pbar.set_postfix({"loss": f"{0.5}", "acc": f"{95}%"})
Output:
print_table() - Pretty Dictionary Tables
Display dictionaries as colorful, formatted tables. Great for configuration display, stats output, or debugging.
Features:
- Automatic column sizing
- Color-coded columns (cyan keys, orange values)
- Optional table title
- Optional row dividers
from prettyterm import print_table
data = {
"Name": "Alice",
"Age": 30,
"City": "Wonderland",
"Role": "Developer"
}
print_table(data, title="User Info", show_lines=True)
Output:
get_logger() - Colored Logging with SUCCESS Level
Get a pre-configured logger with colored output and a custom SUCCESS logging level (sits between INFO and WARNING).
Features:
- Color-coded log levels
- Custom
SUCCESSlevel (green) - Auto-configured on import
- Clean, piped format:
timestamp │ level │ name │ message
from prettyterm import get_logger
logger = get_logger("my_app")
logger.debug("Detailed debug info")
logger.info("Application started")
logger.success("Operation completed!") # Custom level
logger.warning("Resource usage high")
logger.error("Connection failed")
logger.critical("System shutting down")
Output:
Log Colors:
DEBUG- CyanINFO- WhiteSUCCESS- Green (custom)WARNING- YellowERROR- RedCRITICAL- Red on white
Development
# Install in editable mode
pip install -e .
# Run examples
python src/prettyterm/pbar.py
python src/prettyterm/table.py
python src/prettyterm/logger.py
License
MIT
Project details
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 prettyterm-0.2.2.tar.gz.
File metadata
- Download URL: prettyterm-0.2.2.tar.gz
- Upload date:
- Size: 86.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2818e64355f45fe22dbf24f7b5e572ed832272e64912b0d48404f95ef76b2a14
|
|
| MD5 |
83e4ec15e98dae0d172daec9d7baad73
|
|
| BLAKE2b-256 |
7cdd01b13d415647c933d6c08b84179ec573f37994732b079e49dee678fea5a2
|
File details
Details for the file prettyterm-0.2.2-py3-none-any.whl.
File metadata
- Download URL: prettyterm-0.2.2-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
251d7dbee74de31c654d8ae5ab53dd30861f4baef5a46ba11820dc266176e534
|
|
| MD5 |
1d696aeba5ed58e2d686fff366f11a84
|
|
| BLAKE2b-256 |
e519918e2c9f27291457931c49fef229a0f355766f50c415d346f245f46c50b3
|