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.6.tar.gz
(5.8 kB
view details)
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
b64fx-1.0.6-py3-none-any.whl
(5.8 kB
view details)
File details
Details for the file b64fx-1.0.6.tar.gz.
File metadata
- Download URL: b64fx-1.0.6.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
40b033edf95882b90021cb09e095b8bdb9e0084b8894cda3330bd195faecaf5a
|
|
| MD5 |
cdf607475b87e1c92fad200d9db65199
|
|
| BLAKE2b-256 |
a5dfba2c821226cd87bc9540c31b3e2a295d5b894910dc1e570648640027d6ee
|
File details
Details for the file b64fx-1.0.6-py3-none-any.whl.
File metadata
- Download URL: b64fx-1.0.6-py3-none-any.whl
- Upload date:
- Size: 5.8 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 |
fab484327f7ec4f1dcbf5fb2090103d5baed6860c1b3ce79ed3b7d6859d40797
|
|
| MD5 |
35c7e192e359b39db664de97edfc6dc5
|
|
| BLAKE2b-256 |
d0a5ad7e8b1a8656543c9310558ea38cbaea34c251068449c253aa9e319ca693
|