A Python library which includes lots of helpful classes, types, and functions aiming to make common programming tasks simpler.
Project description
xulbux
xulbux is a library that contains many useful classes, types, and functions,
ranging from console logging and working with colors to file management and system operations.
The library is designed to simplify common programming tasks and improve code readability through its collection of tools.
For precise information about the library, see the library's documentation.
For the libraries latest changes and updates, see the change log.
The best modules, you have to check out:
Installation
Run the following commands in a console with administrator privileges, so the actions take effect for all users.
Install the library and all its dependencies with the command:
pip install xulbux
Upgrade the library and all its dependencies to their latest available version with the command:
pip install --upgrade xulbux
CLI Commands
When the library is installed, the following commands are available in the console:
| Command | Description |
|---|---|
xulbux-help |
shows some information about the library |
Usage
Import the full library under the alias xx, so its constants, classes, methods, and types are accessible with xx.CONSTANT.value, xx.Class.method(), xx.type():
import xulbux as xx
So you don't have to import the full library under an alias, you can also import only certain parts of the library's contents:
# LIBRARY CONSTANTS
from xulbux.base.consts import COLOR, CHARS, ANSI
# Main Classes
from xulbux import Code, Color, Console, ...
# module specific imports
from xulbux.color import rgba, hsla, hexa
Modules
Example Usage
This is what it could look like using this library for a simple but ultra good-looking color converter:
from xulbux.base.consts import COLOR, CHARS
from xulbux.color import hexa
from xulbux import Console
def main() -> None:
# LET THE USER ENTER A HEXA COLOR IN ANY HEXA FORMAT
input_clr = Console.input(
"[b](Enter a HEXA color in any format) > ",
start="\n",
placeholder="#7075FF",
max_len=7,
allowed_chars=CHARS.HEX_DIGITS,
)
# ANNOUNCE INDEXING THE INPUT COLOR
Console.log(
"INDEX",
"Indexing the input HEXA color...",
start="\n",
title_bg_color=COLOR.BLUE,
)
try:
# TRY TO CONVERT THE INPUT COLOR INTO A hexa() COLOR
hexa_color = hexa(input_clr)
except ValueError:
# ANNOUNCE THE ERROR AND EXIT THE PROGRAM
Console.fail(
"The input HEXA color is invalid.",
end="\n\n",
exit=True,
)
# ANNOUNCE STARTING THE CONVERSION
Console.log(
"CONVERT",
"Converting the HEXA color into different types...",
title_bg_color=COLOR.TANGERINE,
)
# CONVERT THE HEXA COLOR INTO THE TWO OTHER COLOR TYPES
rgba_color = hexa_color.to_rgba()
hsla_color = hexa_color.to_hsla()
# ANNOUNCE THE SUCCESSFUL CONVERSION
Console.done(
"Successfully converted color into different types.",
end="\n\n",
)
# PRETTY PRINT THE COLOR IN DIFFERENT TYPES
Console.log_box_bordered(
f"[b](HEXA:) [i|white]({hexa_color})",
f"[b](RGBA:) [i|white]({rgba_color})",
f"[b](HSLA:) [i|white]({hsla_color})",
)
if __name__ == "__main__":
main()
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 xulbux-1.8.5.tar.gz.
File metadata
- Download URL: xulbux-1.8.5.tar.gz
- Upload date:
- Size: 82.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5cbe4eb2a9f1d5d5398b08e389544291fa0570618faeef77f6a0b9cd1483c0ed
|
|
| MD5 |
10aa856d0b5f3c16a2e039c9560fece8
|
|
| BLAKE2b-256 |
2d89f2043477230f566cbd36047b093deea787c17eba4cd582b2b9f8b55ce084
|
File details
Details for the file xulbux-1.8.5-py3-none-any.whl.
File metadata
- Download URL: xulbux-1.8.5-py3-none-any.whl
- Upload date:
- Size: 60.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0e65780df387b4d3e0f37261f9b2354417a8f4d0cc83b05f6d33ac27008f890d
|
|
| MD5 |
c4a68960a86ce7f80c47d56e8813fb43
|
|
| BLAKE2b-256 |
c7d5ce9aad23ff002b14516be0c03bf7ccd92e14578c887ea84b9e56c86c2127
|