TextToolbox Instant text & writing tools

New: a Base64 tool that doesn't choke on emoji

· TextToolbox

Try encoding “café ☕” with plain btoa() in your browser console and you’ll get a DOMException — not a bug in your code, a limitation baked into the function itself. btoa() assumes one byte per character and simply can’t represent anything outside Latin-1.

Our new Base64 encoder/decoder fixes that properly: it runs your text through TextEncoder to get correct UTF-8 bytes first, then Base64-encodes those bytes. Decoding reverses the same path with TextDecoder. The result: café ☕ 日本語 round-trips exactly, no mangled characters, no thrown exceptions.

A few things worth knowing:

As always, everything runs in your browser — nothing you type or paste is sent anywhere.

Share this result