--- id: base64io version: "1.0.3" license: Apache License 2.0 license_treatment: permissive maintenance: dormant --- # base64io License: permissive · Maintenance: dormant · Downloads: 352.6K/mo ## 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 above — 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 pip install base64io uv add base64io 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: unspecified - Install friction: low - Maintenance: dormant - Downloads: 352.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags base64 streaming encoder, stream-based base64 encode decode, base64 io wrapper, memory-efficient base64 transform, base64 file encoding stream, large file base64 processing, streaming-io, base64-encoding [View on SkillFed](https://skillfed.io/packages/base64io) · [View on PyPI](https://pypi.org/project/base64io/)