skillfed

base64io

base64io v1.0.3 352.6K downloads/30d#7,313 on PyPI42
Permissive license Apache License 2.0 DORMANT released

What it is and what it does

base64io provides a streaming wrapper around input/output streams that transparently applies Base64 encoding or decoding as data passes through. Unlike Python's built-in base64 module, which requires complete streams in memory, base64io lets you transform large files or live streams in chunks, holding only a small buffer at any time. It implements the standard io interface with context manager support, making it a drop-in wrapper for file handles or other stream objects.

The package is designed for scenarios where you need to encode or decode Base64 data without materializing the full content in memory—for example, uploading an encoded file to a remote service, or decoding a streamed response. It has no external dependencies and works with the standard library alone, though it does not support seek, tell, fileno, or truncate operations because the encoded and decoded stream positions diverge.

Use it for:

  • Encode large files to Base64 for transmission or storage without loading them entirely into memory.
  • Decode Base64-encoded streams in a pipeline, processing chunks as they arrive.
  • Wrap file handles or network streams to transparently apply Base64 transformation during read/write operations.
  • Transform data in a loop without buffering the entire result, suitable for memory-constrained environments.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides a streaming interface for Base64 encoding and decoding that processes data without loading entire files into memory.

Yes, if you need streaming Base64 encoding/decoding and can work within its constraints (no seek/tell support, must close after write). Low install friction, no dependencies, permissive license, and no known vulnerabilities make it a safe choice. Dormant maintenance is a minor concern only if you require active bug fixes for modern Python versions beyond 3.7.

Install

base64io on PyPI

pip

pip install base64io

uv

uv add base64io

poetry

poetry add base64io

Installing base64io

Before you install

Low install friction with no runtime dependencies beyond the standard library. Dormant since late 2018 but repo remains active; last commit January 2025 suggests maintenance monitoring rather than active development.

License in practice

Licensed under Apache License 2.0 (permissive), imposing no restrictions on use or distribution in most contexts.

Quickstart

from base64io import Base64IO

with open("source_file", "rb") as source, open("encoded_file", "wb") as target:
    with Base64IO(target) as encoded_target:
        for line in source:
            encoded_target.write(line)

Must close the stream (or use context manager) after final write to flush internal buffer and write padded result.

Verify before relying

  • Whether the package is actively maintained or only monitored; last commit date does not clarify development intent.
  • Performance characteristics on very large files compared to standard library alternatives.
  • Compatibility with modern Python versions beyond 3.7 (classifiers list only up to 3.7).

Package facts

License Apache License 2.0 (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance dormant — 2,804 days since the last release
Last repo commit
First released
Downloads 352,576/month — #7,313 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: base64io-1.0.3-py2.py3-none-any.whl

Keywords: base64, stream

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: Implementation :: CPython

Tags

base64 streaming encoderstream-based base64 encode decodebase64 io wrappermemory-efficient base64 transformbase64 file encoding streamlarge file base64 processing
streaming-iobase64-encoding

More Software Development packages