NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3471 most downloaded on npm
Secure, audited & 0-dep implementation of base64, bech32, base58, base32 & base16
Last release 1 months ago
28 Aug 2026
Release timing varies
gaps range from 8 days to 8 months
Nearly every release is documented
notes for 22 of 22 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
24 releases · first in 2022
One column per quarter.
Added base36 coder (lowercase alphanumeric, multibase k payload as used by IPFS/IPNS addresses)
base36 coder (lowercase alphanumeric, multibase k payload as used by IPFS/IPNS addresses)bech32.decodeToBytes / bech32m.decodeToBytes now enforce the 90-char BIP-173 length limit by default (previously unbounded); pass limit: false or a number to overridebech32/bech32m: encode rejects non-printable-ASCII prefixes, and decode rejects non-printable-ASCII input instead of letting case folding normalize non-ASCII characters into valid stringsbase32crockford.decode: non-ASCII input that only becomes valid via case folding is now rejectedFull Changelog: 2.3.0...2.4.0
Massive speed-up of all algorithms. 1 MB speed:
utils, bytesToString / str, stringToBytes / bytes,SomeCoders type. Those were always internal. The coders (base16, base64, …) are unaffected.Full Changelog: 2.2.0...2.3.0
April 2026 self-audit (all files): no major issues found
Uint8Array, while TS 5.9+ made it generic Uint8Array<ArrayBuffer>TS2345(We're skipping v2.1, to align with other noble / scure packages)
Full Changelog: 2.0.0...2.2.0
The package is now ESM-only. ESM can finally be loaded from common.js on node v20.19+
Full Changelog: 1.2.6...2.0.0
Nothing published for this version
base64: prohibit spaces when native mode is selected.
Full Changelog: 1.2.5...1.2.6
base64: use native coding when available . 167x faster encoding on 1KB inputs
Full Changelog: 1.2.4...1.2.5
Fix broken common.js version Full Changelog : 1.2.3...1.2.4
Fix broken common.js version
Full Changelog: 1.2.3...1.2.4
Fix unpublished common.js version
Full Changelog: 1.2.2...1.2.3
Use typescript isolatedDeclarations and "safe types" for automatically generated documentation
Full Changelog: 1.2.1...1.2.2
Bring back NO_SIDE_EFFECTS directive for tree-shaking.
Full Changelog: 1.2.0...1.2.1
Improve encoding and decoding speed up to 4x. Decoding speed benchmarks:
Improve encoding and decoding speed up to 4x. Decoding speed benchmarks:
Reduce minified size. Speed-up bytes testing.
Full Changelog: https://github.com/paulmillr/scure-base/compare/1.1.9...1.2.0
* Add Bech32.encodeFromBytes * Fix typeof Bech32.encode Full Changelog: https://github.com/paulmillr/scure-base/compare/1.1.8...1.1.9
Full Changelog: https://github.com/paulmillr/scure-base/compare/1.1.8...1.1.9
Add Bech32 interface. Use explicit types for jsr
Full Changelog: https://github.com/paulmillr/scure-base/compare/1.1.7...1.1.8
Add base32nopad and base32hexnopad by @benjreinhart in https://github.com/paulmillr/scure-base/pull/34
Full Changelog: https://github.com/paulmillr/scure-base/compare/1.1.6...1.1.7
Refactor bech32 a bit https://github.com/paulmillr/scure-base/pull/27
Full Changelog: https://github.com/paulmillr/scure-base/compare/1.1.5...1.1.6
utils: export convertRadix and convertRadix2
utils: export convertRadix and convertRadix2
Full Changelog: https://github.com/paulmillr/scure-base/compare/1.1.4...1.1.5
fix: error messages (strings => numbers) by @mahnunchik in https://github.com/paulmillr/scure-base/pull/23
chain by @imcotton in https://github.com/paulmillr/scure-base/pull/26Uint8Array type check reliability in bad, jsdom-like environmentsFull Changelog: https://github.com/paulmillr/scure-base/compare/1.1.3...1.1.4
bech32: fix type issue introduced by gh-15
Full Changelog: https://github.com/paulmillr/scure-base/compare/1.1.2...1.1.3
Improve tree-shaking, reduce package size by utilizing pure functions and sideEffects: false
base64urlnopadsideEffects: falsemod.tsFull Changelog: https://github.com/paulmillr/scure-base/compare/1.1.1...1.1.2
Fix ESM support
Fix ESM support
Remove viral esModuleInterop option from typescript compiling
esModuleInterop option from typescript compilingFirst stable post-audit release
First stable post-audit release
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →