Skip to main content

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)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

b64fx-1.0.6-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

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

Hashes for b64fx-1.0.6.tar.gz
Algorithm Hash digest
SHA256 40b033edf95882b90021cb09e095b8bdb9e0084b8894cda3330bd195faecaf5a
MD5 cdf607475b87e1c92fad200d9db65199
BLAKE2b-256 a5dfba2c821226cd87bc9540c31b3e2a295d5b894910dc1e570648640027d6ee

See more details on using hashes here.

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

Hashes for b64fx-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 fab484327f7ec4f1dcbf5fb2090103d5baed6860c1b3ce79ed3b7d6859d40797
MD5 35c7e192e359b39db664de97edfc6dc5
BLAKE2b-256 d0a5ad7e8b1a8656543c9310558ea38cbaea34c251068449c253aa9e319ca693

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page