Tiny base converter (2..36) β ~1 KB, zero deps.
255 β FF (base 10β16), FF β 11111111 (16β2), negatives supported. Perfect for code-golf, minimal containers, or just for fun.
- β
Convert between any bases 2..36 (digits
0-9A-Z, case-insensitive) - β
Two forms:
<value> <to_base>(assumesfrom=10)<value> <from_base> <to_base>
- β
Handles negatives,
0
# Local (from repo)
python app_min.py 255 16 # FF
python app_min.py FF 16 2 # 11111111
python app_min.py -42 10 16 # -2AAfter installing:
# CLI
pip install nano-base
nano-base 255 16 # -> FF
nano-base FF 16 2 # -> 11111111
nano-base -2A 16 10 # -> -42- Uses int(s, base) + tiny loop to format in target base
- No bigint libs; Python int already arbitrary precision
- Single tiny file + tiny CLI: perfect for scripts, containers, CI.
- Hex table (0..255)
for i in $(seq 0 255); do printf "%3d -> %s\n" $i "$(nano-base $i 16)"; done- Binary width (pad with printf)
printf "%08d\n" "$(nano-base 42 2)" # 000101010 (pad separately)- Base36 IDs
nano-base 123456789 10 36 # -> 21I3V9Note: Valid range is bases 2..36; input is case-insensitive (a..z β‘ A..Z).
MIT Β© 2025