skillfed

base36

Yet another implementation for the positional numeral system using 36 as the radix.

base36 v0.1.1 152.7K downloads/30d#10,895 on PyPI24
Permissive license MIT DORMANT released

What it is and what it does

Base36 is a simple utility for converting between integers and their base36 (radix-36) string representation. It provides two core functions: dumps() to encode an integer into a compact alphanumeric string using digits and letters, and loads() to decode that string back to the original integer. The package has no external dependencies and installs as a pure Python wheel.

The package is dormant—its last release was in 2014 and it has received no updates since, though the repository remains active. It carries an MIT license and is classified as Alpha status. With no known security vulnerabilities and minimal install friction, it is suitable for straightforward base36 conversion tasks where you do not require active maintenance.

Use it for:

  • Encode numeric IDs into shorter, URL-safe alphanumeric strings for web applications or APIs
  • Compress integer identifiers for database records or user-facing references
  • Implement compact representations of numeric data in data serialization
  • Convert between integer and alphanumeric formats for encoding purposes

Worth the install?

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

Converts integers to and from base36 representation, a compact alphanumeric encoding using digits and letters.

Yes, if you need simple base36 encoding/decoding with no external dependencies. The package is lightweight and has no known vulnerabilities. However, be aware it is dormant since 2014 and classifiers list only older Python versions; test thoroughly on your target Python version before relying on it in production.

Install

base36 on PyPI

pip

pip install base36

uv

uv add base36

poetry

poetry add base36

Installing base36

Before you install

Low friction to install; the package is dormant with no recent updates since its initial release, though the repository remains active.

License in practice

MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions.

Quickstart

import base36

# Encode integer to base36
encoded = base36.dumps(19930503)
assert encoded == 'bv6h3'

# Decode base36 back to integer
decoded = base36.loads('bv6h3')
assert decoded == 19930503

Verify before relying

  • Whether the package works reliably with modern Python versions beyond those listed in classifiers
  • Performance characteristics for large integers or bulk conversions
  • Whether base36 encoding handles negative integers or only non-negative values

Package facts

License MIT (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance dormant — 4,268 days since the last release
Last repo commit
First released
Downloads 152,716/month — #10,895 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: base36-0.1.1-py2.py3-none-any.whl

Development Status :: 3 - AlphaLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2.7Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Programming Language :: Python :: Implementation :: PyPy

Tags

base36 encoding decodingconvert integer to base36base36 string conversionalphanumeric number encodingradix 36 numeral systemcompact integer representation
encodingnumeral-systems

More Utilities packages