skillfed

base32-crockford

A Python implementation of Douglas Crockford's base32 encoding scheme

base32-crockford v0.3.0 784.1K downloads/30d#5,072 on PyPI51
Permissive license BSD Abandoned released

What it is and what it does

base32-crockford is a Python implementation of Douglas Crockford's base32 encoding scheme, an alternative to standard base32 designed for human readability and error resistance. It uses a symbol set of 10 digits and 22 letters, deliberately excluding I, L, O, and U to avoid confusion between similar-looking characters. The encoder produces uppercase output, while the decoder is case-insensitive and automatically corrects common misreadings (i→1, l→1, o→0). Hyphens can be inserted for readability and are stripped during decoding. The scheme also supports appending a check symbol to detect errors within encoded strings.

The package has no runtime dependencies and installs easily, but it is no longer actively maintained. The last release was in 2015 and the last repository commit in 2019, so it will not receive updates for new Python versions, security issues, or bug fixes. It is suitable for projects that need Crockford base32 encoding and can tolerate a static, unsupported codebase.

Use it for:

  • Encode identifiers or tokens in a human-friendly format that is easy to read aloud or transcribe by hand
  • Decode Crockford base32 strings received from external systems or APIs that use this encoding standard
  • Add error detection to encoded data by appending a check symbol and validating it on decode
  • Replace standard base32 in contexts where confusing characters (I, L, O, U) must be avoided

Worth the install?

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

Encodes and decodes data using Douglas Crockford's base32 scheme, a human-readable alternative to standard base32 that excludes confusing characters and supports error detection.

Yes, if you specifically need Crockford base32 encoding and can accept an unmaintained package. The implementation is simple, has no dependencies, and carries no known vulnerabilities. However, do not use it if you require ongoing maintenance, support for modern Python versions, or active bug fixes. For new projects, verify that this encoding scheme is actually required rather than a standard alternative.

Install

base32-crockford on PyPI

pip

pip install base32-crockford

uv

uv add base32-crockford

poetry

poetry add base32-crockford

Installing base32-crockford

Before you install

Installation is straightforward with no runtime dependencies. However, the package is abandoned—last release was 2015-03-19 and last commit 2019-10-21—so it will not receive bug fixes or security updates.

License in practice

BSD license is permissive, allowing commercial and private use with minimal restrictions, making it safe to include in most projects.

Quickstart

pip install base32-crockford

from base32_crockford import encode, decode

encoded = encode(b'hello')
decoded = decode(encoded)

Verify before relying

  • Whether the package works reliably on modern Python versions (classifiers list Python 2.6–3.4, but no requires_python constraint is specified)
  • Whether error detection via check symbols is production-ready or experimental
  • Performance characteristics for large data volumes

Package facts

License BSD (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance abandoned — 4,166 days since the last release
Last repo commit
First released
Downloads 784,144/month — #5,072 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: base32_crockford-0.3.0-py2.py3-none-any.whl

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Topic :: Software Development :: Libraries :: Python ModulesTopic :: Utilities

Tags

base32 encoding decodingcrockford base32human readable encodingerror detecting encodingalternative base32 schemecompact data encodingchecksum encoding
encodingabandoned

More Python Modules packages