A custom Tkinter widget that displays Loguru log messages in real-time with support for styling and colors. Monitor application logs directly within your Tkinter GUI.
Project description
Loguru Tkinter Widget
A thread-safe, customizable Tkinter widget for displaying Loguru logs in real-time.
Features
- Real-time log display in a Tkinter application
- Thread-safe implementation using a queue
- Customizable color modes for log levels
- Adjustable maximum number of displayed log lines
- Optional scrollbar
- Easy integration with existing Loguru logger
Installation
- Ensure you have Python 3.6+ installed on your system.
- Install the required dependencies:
pip install tkloguru
- Copy the
LoguruWidgetclass and related functions into your project.
Usage
Here's a basic example of how to use the Loguru Tkinter Widget:
import tkinter as tk
from loguru import logger
from loguru_widget import LoguruWidget, setup_logger
root = tk.Tk()
root.title("Loguru Tkinter Widget Demo")
root.geometry("600x400")
log_widget = LoguruWidget(root, show_scrollbar=True, color_mode='level', max_lines=1000)
log_widget.pack(expand=True, fill=tk.BOTH, padx=10, pady=10)
setup_logger(log_widget)
# Example log messages
logger.debug("This is a debug message")
logger.info("This is an info message")
logger.success("This is a success message")
logger.warning("This is a warning message")
logger.error("This is an error message")
logger.critical("This is a critical message")
root.mainloop()
Customization
The LoguruWidget class accepts several parameters for customization:
master: The parent Tkinter widget (required)show_scrollbar: Boolean to show/hide the scrollbar (default: True)color_mode: String to set the coloring mode ('level', 'message', or 'full') (default: 'level')max_lines: Integer to set the maximum number of displayed log lines (default: 1000)
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
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 tkloguru-0.1.2.tar.gz.
File metadata
- Download URL: tkloguru-0.1.2.tar.gz
- Upload date:
- Size: 6.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d13c231da165fe9c519c271050e754005e65b8406d4015db2a7c6f260bfe8399
|
|
| MD5 |
0da4f95062d62565fc2465097632cd2f
|
|
| BLAKE2b-256 |
e6c03308477002a53b7ec4a5f1a5ee1fd338c00771fdba4bab4ef7f94af3f029
|
File details
Details for the file tkloguru-0.1.2-py3-none-any.whl.
File metadata
- Download URL: tkloguru-0.1.2-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6793c18100226a5c797d60755a0de37f6b8ab056e036d417392064041f70aeda
|
|
| MD5 |
c082a3b9b44a6f24cd44ccda0e1ffb11
|
|
| BLAKE2b-256 |
959723de03eed35529743ad779b41bf8becd0148326eb0dd855b8dfbcae5a269
|