Developer Utilities
Small developer utilities that save a trip to a random website. Encode and decode Base64, explain a regex, build UTM links, generate QR codes and vCards, and more — the everyday helpers. Free in your browser, and available by API when you need them in a script.
Polybius square cipher
HELLO becomes 2315313134 on the Polybius square: each letter is replaced by the row and column of its cell in a five-by-five grid, with I and J sharing cell 24.
Free · Runs in your browser
Punycode converter
The label münchen becomes xn--mnchen-3ya, the plain ASCII form that domain records, certificates and older systems accept.
Free · Runs in your browser
Rail fence cipher
Write a message in a zigzag across rails and read it row by row: with 3 rails, WEAREDISCOVEREDFLEEATONCE becomes WECRLTEERDSOEEFEAOCAIVDEN, and the same rail…
Free · Runs in your browser
ROT13 encoder
Hello, World! becomes Uryyb, Jbeyq! and the same step turns it back: every Latin letter moves 13 places while punctuation stays put.
Free · Runs in your browser
ROT18 cipher
Hello, World! 123 becomes Uryyb, Jbeyq! 678 in one pass: letters move 13 places and digits move five, while spaces and punctuation stay put.
Free · Runs in your browser
ROT5 digit cipher
0123456789 becomes 5678901234: each digit moves five places on a circle of ten, while letters, spaces and dashes stay where they are.
Free · Runs in your browser
Tap code translator
Type HI and get 2,3 2,4: H sits in row 2, column 3 of the 5×5 Polybius square and I in row 2, column 4, also shown as dots for tapping.
Free · Runs in your browser
Trifid cipher
With the keyword KEYWORD and period 5, DEFENDTHEEAST encrypts to ERKQJAYHKOBQL. Each letter becomes three cube coordinates that are then regrouped, mixing…
Free · Runs in your browser
Unicode code point converter
Type Hi and get U+0048 U+0069, one code point per character, with an emoji kept as a single value such as U+1F600 instead of two broken halves.
Free · Runs in your browser
URL percent encoder & decoder
hello world & café becomes hello%20world%20%26%20caf%C3%A9, safe to drop into a link. Choose between encoding a single value, where & = ? / are escaped too, or…
Free · Runs in your browser
UTF-8 byte encoder
Find the exact UTF-8 bytes of any word or phrase: “Hi” becomes the hex pairs 48 69, one pair per byte, and pasted hex decodes back to the original characters.
Free · Runs in your browser
XOR cipher
XORs your text with a repeating key and shows the result as hex: “Hello” with the key “key” becomes 230015070a, and the same key turns it back into text.
Free · Runs in your browser
PEM Base64 encoder
Wrap text the way certificates and keys are stored: standard Base64 folded into 64-character lines between matching -----BEGIN CERTIFICATE----- and -----END…
Free · Runs in your browser
Aadhaar Verhoeff check digit
Get the Verhoeff check digit for the first eleven digits of an Aadhaar number, or check a full twelve-digit one: 2345 6789 012 gets 4, giving 2345 6789 0124.
Free · Runs in your browser
ABA routing check digit
Find or verify the ninth digit of a US bank routing number with the official 3-7-1 weights, so 02100002 gets check digit 1 and becomes 021000021.
Free · Runs in your browser
Able Baker alphabet
Spell any name or call sign with the pre-NATO US military alphabet: SOS becomes Sugar Oboe Sugar, and a string of Able Baker words decodes back to letters.
Free · Runs in your browser
Australian Business Number (ABN) check
Check an eleven-digit Australian Business Number with the official tax office rule: 53 004 085 616 gives a weighted sum of 445, which divides evenly by 89, so…
Free · Runs in your browser
Australian ACN check digit
Get the check digit for the first eight digits of an Australian Company Number, or validate all nine: 004 085 61 gets 6, giving 004 085 616.
Free · Runs in your browser
ADFGVX cipher
Encrypt or decrypt with the six-by-six German field cipher that handles letters and digits: ATTACKAT1200, with square keyword PRIVACY and transposition key…
Free · Runs in your browser
ADFGX cipher
Run the World War I ADFGX cipher, which turns each letter into a pair of the labels A, D, F, G and X and then shuffles the columns: under the keys NAVAL and…
Free · Runs in your browser
Adler-32 checksum calculator
Get the Adler-32 checksum of any text, the two-sum check used inside zlib: Wikipedia gives 11e60398, with A at 920 and B at 4582.
Free · Runs in your browser
Albam Hebrew cipher
Swap each Hebrew letter with its partner in the other half of the alphabet: alef becomes lamed, bet becomes mem, and בראשית turns into מטלישכ.
Free · Runs in your browser
btoa Ascii85 encoder
Encode text in the original btoa dialect of Ascii85, with xbtoa Begin and End lines, z for four zero bytes and y for four spaces: Hello, world! becomes…
Free · Runs in your browser
ASL fingerspelling translator
Turn any name or code into the ordered list of ASL fingerspelling handshapes: ASL becomes the fist A, the fist S and the L shape, and digits get their own…
Free · Runs in your browser
Cyrillic Atbash cipher
Mirror every Russian Cyrillic letter across the 33-letter alphabet, so А swaps with Я and ПРИВЕТ becomes ПОЦЭЪМ; running it again restores the original.
Free · Runs in your browser
Greek Atbash cipher
Mirror the 24 letters of the Greek alphabet, alpha with omega and beta with psi, so Καλημέρα becomes Οωξσνέθω and a second pass brings it back.
Free · Runs in your browser
AZERTY ↔ QWERTY converter
Fix text typed on the wrong keyboard layout by remapping each key between French AZERTY and US QWERTY: the six keys that read azerty on a French keyboard give…
Free · Runs in your browser
Bijective base-26 encoder
Turn a column number into its spreadsheet letters, or letters back into a number: 27 becomes AA, 26 is Z and 702 is ZZ, the same labels Excel and Google Sheets…
Free · Runs in your browser
Base32768 encoder & decoder
Pack text into Base32768, where each Unicode character carries fifteen bits for UTF-16 channels: Hello becomes just three characters, 䩲腻㐿.
Free · Runs in your browser
Crockford Base32 encoder & decoder
“Hello” becomes 91JPRV3F in Crockford Base32, an alphabet without I, L, O or U, so serial numbers and support codes survive being read aloud or retyped.
Free · Runs in your browser
z-base-32 encoder & decoder
“Hello” becomes jb1sa5dx in z-base-32, Zooko's human-oriented Base32 alphabet that leaves out 0, 2, l and v and adds no padding, so codes stay short and are…
Free · Runs in your browser
Base58Check encoder & decoder
Bitcoin address data of 21 bytes becomes 16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM, 33 characters carrying a four-byte double SHA-256 checksum, so a mistyped character…
Free · Runs in your browser
Ripple Base58 encoder & decoder
“Hello World” becomes JxErpTiA7PhnBMd in Ripple Base58, the XRP Ledger alphabet that starts r, p, s, h, n and skips 0, O, I and l, so your strings follow the…
Free · Runs in your browser
bcrypt Base64 encoder & decoder
“Hello, world!” becomes QETqZE6qGFbtakviGO in bcrypt Base64, the OpenBSD alphabet that starts with period and slash and never adds equals signs, the same form…
Free · Runs in your browser
OpenPGP Radix-64 encoder
“Hello, OpenPGP!” becomes the Radix-64 body SGVsbG8sIE9wZW5QR1Ah plus the checksum line =FPfi: the OpenPGP armor format, whose CRC-24 lets the receiver spot…
Free · Runs in your browser
Git Base85 encoder
“hello” becomes the Git Base85 line EXk~0{ZvX%Q, where the leading E says the line holds five bytes: the dialect Git uses for binary patches, distinct from…
Free · Runs in your browser
basE91 encoder
basE91 packs text into 91 printable characters, denser than Base64 and with no padding: “Hello, world!” becomes >OwJh>}A"=r@@Y?F with Joachim Henke's original…
Free · Runs in your browser
Base94 encoder & decoder
“Hello, world!” becomes /P|?l:+>Nq\sr<+r in Base94, which uses every printable ASCII character from ! to ~ except the space, so each character carries more than…
Free · Runs in your browser
Negabinary converter
13 is 11101 in negabinary, base −2, whose places alternate 1, −2, 4, −8 and 16, so every whole number, negative ones included, is written with only 0 and 1 and…
Free · Runs in your browser
Golden ratio base converter
2 becomes 10.01 in base φ, where each place is a power of phi, about 1.61803398875: every whole number gets a finite string of only 0 and 1, often with digits…
Free · Runs in your browser
Quaternary (base-4) converter
27 is 123 in base 4: each quaternary digit, from 0 to 3, holds exactly two bits, which is why base 4 suits DNA's four letters and two-bit codes.
Free · Runs in your browser
Senary base-6 converter
42 is 110 in base 6, the senary system with digits 0 to 5 and places worth 1, 6, 36 and 216, the radix of six-sided dice and place-value lessons.
Free · Runs in your browser
Baudot ITA2 encoder
“HI” becomes 10100 00110 in Baudot–Murray ITA2, the five-bit teleprinter code of Telex and radio teletype, with letter and figure shifts inserted automatically…
Free · Runs in your browser
BIP-39 mnemonic encoder
Sixteen zero bytes of entropy become “abandon” eleven times followed by “about”: BIP-39 turns 128 to 256 bits into 12 to 24 English words with a SHA-256…
Free · Runs in your browser
Unicode bold italic text
“Hello World” becomes 𝑯𝒆𝒍𝒍𝒐 𝑾𝒐𝒓𝒍𝒅: each Latin letter is swapped for its Mathematical Bold Italic twin from Unicode, so the emphasis survives pasting…
Free · Runs in your browser
Book cipher
Hide a message inside a passage you share with someone: with a 13-word key, “quick fox river” becomes 2 4 12, and those numbers decrypt back to the same words.
Free · Runs in your browser
Brainfuck text encoder
Type “Hi” and get a ready-to-run Brainfuck program of 107 characters, made only of plus signs and print dots.
Free · Runs in your browser
BSD checksum calculator
The text “abc” gives a BSD checksum of 16556, or 40ac in hex, in 1 block: the same pair the old Unix sum command prints in BSD mode.
Free · Runs in your browser
Netherlands BSN check
Enter 12345678 and get check digit 2, so the full BSN is 123456782; or paste a nine-digit number to see whether it passes the Dutch eleven-test.
Free · Runs in your browser
C string escaper
A stray double quote, backslash or line break can break a C string; this tool turns Hello "world", a new line and line 2 into Hello \"world\"\nline 2, ready to…
Free · Runs in your browser
Cyrillic Caesar cipher
With a shift of 3, “Привет, мир!” becomes “Тулезх, плу!”: each of the 33 Russian letters, Ё included, moves three places and wraps from Я back to А.
Free · Runs in your browser
CAS Registry Number check digit
Enter 7732-18 and get check digit 5, giving 7732-18-5, the CAS number of water; type 7732-18-6 instead and validation fails.
Free · Runs in your browser
Chaocipher
Encrypt WELLDONEISBETTERTHANWELLSAID with Byrne's classic starting disks and you get OAHQHCNYNXTSZJRRHJBYHQKSOUJY: both alphabets reshuffle after each letter…
Free · Runs in your browser
China resident ID check digit
Enter 11010519491231002 and get the check character X, so the full resident ID reads 11010519491231002X; or paste all 18 characters to see whether the last one…
Free · Runs in your browser
Ecuador cédula check digit
Enter 171003406 and get check digit 5, so the full cédula is 1710034065; or paste ten digits to see whether the last one fits the official modulo-10 rule.
Free · Runs in your browser
Unicode circled letters
Type Hello123 and get Ⓗⓔⓛⓛⓞ①②③: eight bubble characters that paste as plain text into usernames, stream titles and captions, with no special font.
Free · Runs in your browser
Romanian CNP check digit
Enter 180010122114 and get check digit 4, so the full CNP is 1800101221144; or paste all thirteen digits to see whether the last one fits the official…
Free · Runs in your browser
Brazil CNPJ check digits
Enter the base 112223330001 and get check digits 81, so the full CNPJ is 11222333000181; or paste 14 digits to confirm both trailing digits.
Free · Runs in your browser
Colemak QWERTY converter
Type hello with QWERTY habits on a Colemak keyboard and the screen shows hfiiy; this converter maps each letter to the character on the same physical key, in…
Free · Runs in your browser
Cologne phonetics encoder
Müller, Mueller and Muller all get the code 657, and Schmidt and Schmied share 862, so spelling variants of a German name land together.
Free · Runs in your browser