better than original base64
Project description
b64fx
b64fx is a Python library for encoding and decoding data in various base formats with optional compression support. It provides both synchronous and asynchronous APIs for efficient processing of data.
Features
- Encode/decode with Base16, Base32, Base32hex, Base64, Base85, Ascii85, and Z85.
- URL-safe Base64 encoding and decoding.
- Optional LZ4 compression/decompression for efficient storage.
- Async file encoding/decoding for handling large data without blocking.
- Compatible with Python 3.8+.
Installation
From PyPI (if uploaded)
pip install b64fx
Usage
All-in-one example:
import asyncio
import b64fx
# Original data
data = "Hello, world! This is a test string."
print("Original:", data)
# ===== Synchronous compression + Base64 =====
encoded = b64fx.encz(data)
print("Compressed + Encoded:", encoded)
decoded = b64fx.decz(encoded)
print("Decoded + Decompressed:", decoded.decode('utf-8'))
# ===== Base Encodings =====
raw_bytes = data.encode('utf-8')
# Base64
b64 = b64fx.standard_b64encode(raw_bytes)
print("Base64:", b64)
print("Base64 Decoded:", b64fx.standard_b64decode(b64))
# URL-safe Base64
url_b64 = b64fx.urlsafe_b64encode(raw_bytes)
print("URL-safe Base64:", url_b64)
print("URL-safe Base64 Decoded:", b64fx.urlsafe_b64decode(url_b64))
# Base32
b32 = b64fx.b32encode(raw_bytes)
print("Base32:", b32)
print("Base32 Decoded:", b64fx.b32decode(b32))
# Base32hex
b32hex = b64fx.b32hexencode(raw_bytes)
print("Base32hex:", b32hex)
print("Base32hex Decoded:", b64fx.b32hexdecode(b32hex))
# Base85 / Ascii85 / Z85
b85 = b64fx.b85encode(raw_bytes)
print("Base85:", b85)
print("Base85 Decoded:", b64fx.b85decode(b85))
a85 = b64fx.a85encode(raw_bytes)
print("Ascii85:", a85)
print("Ascii85 Decoded:", b64fx.a85decode(a85))
z85 = b64fx.z85encode(raw_bytes)
print("Z85:", z85)
print("Z85 Decoded:", b64fx.z85decode(z85))
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
b64fx-1.0.4.tar.gz
(127.3 kB
view details)
File details
Details for the file b64fx-1.0.4.tar.gz.
File metadata
- Download URL: b64fx-1.0.4.tar.gz
- Upload date:
- Size: 127.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 |
dc806475895580b811bddc735fcef78a5adeed81c0a9ba4845304253fc8a580f
|
|
| MD5 |
20d99112d26163b534502adcb2bbb8e5
|
|
| BLAKE2b-256 |
0abc2f3e9f40baca79a3882f7e0649a8042bf9b1ca90b605e189dd84500cb555
|