Developer & data

Encode, format and generate the values developers pass between systems.

Written for: Developers and designers · People moving text between systems

What this family is for

The formats a program exchanges are not the formats a person reads. A JSON document arrives as one unreadable line, a token is Base64, a URL is percent-encoded, and an identifier has to be unique. These tools convert and inspect those values in the browser, so a secret token or payload is never sent over the network, and each page states the standard it follows.

Encoding, hashing, encrypting or formatting a value

The most expensive mistake in this family is using one of these verbs when another was meant. Encoding (Base64, percent-encoding, hex) is a reversible representation change with no key: anyone can undo it, so it is for transport, never for hiding. Hashing (SHA-1/256/384/512) is one-way and fixed-length: it proves two byte sequences are identical, which is why it is the right answer for a checksum and the wrong answer for “encrypt this message”. Encryption (AES-256-GCM here) is reversible with a key and protects confidentiality — it is the only one of the three that should be used when the content must stay secret.

The second split is between inspecting a value and generating one. Decoding a JWT shows you the claims but proves nothing about who issued it: the signature is verified with a key you do not have here, so a token that decodes cleanly can still be forged, expired or for a different audience. Likewise, decoding Base64 of an image tells you the bytes, not that the image is safe. Read the warning on the page before acting on a decoded value.

Formatting is a third, separate job: pretty-printing JSON, indenting SQL, converting between JSON, YAML, TOML and XML, or turning a CSV into a table. These preserve meaning but not always bytes — key order, comments and number formatting can change — so never use a round-trip converter as a way to “clean up” a file you then diff against the original.

If you have… Use Because
Carry binary or arbitrary text through a text-only channel Base64 encoder / decoder Reversible, no key; UTF-8 aware, so emoji survive
Put a value safely inside a URL URL encoder / decoder Percent-encoding per RFC 3986, with component and full-URL modes
Prove a download matches a published checksum File hash calculator Streams the file locally; SHA-256 or SHA-512
Keep a message secret with a passphrase Encrypt text (AES-256-GCM) The only reversible-with-key tool here; authenticated, so tampering is detected
Read what is inside a token JWT decoder Shows the claims; explicitly does not verify the signature
Two-factor codes from a secret TOTP generator RFC 6238, computed locally — the secret is never transmitted
An identifier that will not collide UUID generator Version 4, random, RFC 4122 format
A strong password or passphrase Password generator CSPRNG with rejection sampling, and the real entropy shown
Find the syntax error in a JSON or SQL document JSON formatter / SQL formatter Reports the failing position instead of reformatting garbage
Compare two versions of a text Text diff Line diff for code, word diff for prose; bounded on huge inputs

24 tools in Developer & data

Base64 Encoder & Decoder Encode text to Base64 and decode it back, correct for accents, CJK and emoji because the bytes are handled as UTF-8. URL Encoder & Decoder Percent-encode a value or a whole URL and decode it back, with the two modes (query component vs full URL) explained. JSON Formatter & Validator Pretty-print or minify JSON and see exactly where invalid JSON fails, line and column included. UUID Generator Generate random RFC 4122 version-4 UUIDs in bulk, ready to copy as a list. Hash Generator (SHA-1/256/384/512) Compute a SHA-1, SHA-256, SHA-384 or SHA-512 hash of any text using the browser’s own WebCrypto implementation. File Hash Calculator Compute the SHA-256, SHA-1, SHA-384 and SHA-512 checksums of any file and verify it against a published hash — without uploading the file. SQL Formatter & Beautifier Format a SQL query into readable, indented clauses or minify it back to one line, with keyword-case control. Handles SELECT, JOINs and subqueries. Cron Expression Generator Build, validate and read cron expressions in plain English, with the next run times in your timezone — Unix and Quartz syntax. JWT Decoder Decode a JSON Web Token in your browser — read the header and payload as JSON and check exp/iat/nbf, with a clear warning that the signature is not verified. TOTP / 2FA Code Generator Generate the current 6-digit two-factor code from a base32 secret or otpauth:// link, with a live countdown — the secret never leaves your browser. Regex Tester & Debugger Test a JavaScript regular expression against your text — every match and capture group highlighted, compile errors explained, and a replacement preview. CSV to JSON Converter Convert CSV to a JSON array of objects, handling quoted fields, commas and line breaks, with auto delimiter detection and a header-row toggle. JSON to Table Turn an array of JSON objects into a readable HTML table (and copy it as Markdown, CSV or TSV), with columns unioned across rows. Text Diff & Compare Compare two texts and see exactly what changed — a line diff for code and a word diff for prose, with unified or side-by-side output. JSON, YAML, TOML & XML Converter Convert a document between JSON, YAML, TOML and XML in any direction — attributes, nesting and key order preserved, entirely in your browser. Fake Data Generator Generate realistic placeholder records — names, emails, addresses, numbers, dates, UUIDs — from a seed, and export as CSV or JSON. CSV Viewer & Converter Open a CSV as a sortable table, or convert it to JSON, Markdown or an HTML table, with delimiter and header detection. HTTP Status Codes A searchable reference of HTTP status codes — meaning, category and class — with the code itself as the lookup key. Punycode Converter Convert an internationalised domain name between Unicode and its ASCII punycode form (xn--), label by label — münchen.de ↔ xn--mnchen-3ya.de. File Signature Checker Identify a file from its magic bytes rather than its extension, see the hex dump, and catch a name that disagrees with the content. Paper Size Chart Every ISO A, B and C paper size plus the US sizes, in millimetres, inches and pixels at any DPI, with the nearest standard size to a custom dimension. Subnet Calculator Work out the network, broadcast, host range and mask for any IPv4 CIDR block — split a subnet, find its supernet, or test whether an address belongs. Password Generator Generate a strong random password or a memorable word passphrase with a cryptographic source, showing the real entropy and a crack-time estimate. Nothing to type. Encrypt Text (AES-256-GCM) Encrypt and decrypt a message with a passphrase using AES-256-GCM and PBKDF2, entirely in your browser — the key is never stored and nothing is uploaded.

Common mistakes with these tools

  • Treating Base64 as encryption — It is a representation, not a secret. Anyone who intercepts the string can decode it in one step; if the content must stay private, it has to be encrypted first.
  • Assuming a decoded JWT is a valid JWT — Decoding only Base64-decodes the header and payload. A token with a valid-looking payload can be forged, expired or signed with an algorithm the verifier should reject — the signature is what decides, and this tool does not check it.
  • Hashing a password with SHA-256 — General-purpose hashes are fast by design, which is exactly wrong for passwords. Use bcrypt, scrypt or Argon2 in your application; this family is for checksums and integrity checks.
  • Verifying a checksum against the wrong algorithm — A SHA-1 and a SHA-256 digest of the same file look equally plausible and never match each other. Check which one the publisher listed before concluding the download is corrupt.
  • Round-tripping a config file through a converter and diffing it — YAML, TOML and XML carry comments and ordering that JSON cannot represent. The conversion is lossy in ways the data still “works” through, so a diff will show changes you did not intend.
  • Generating test data with a real-looking seed — A fixed seed gives repeatable records, which is the point — but it also means the “fake” names and emails are reproducible. Keep them out of anything that treats them as real data.

Frequently asked questions

Is anything I paste sent to a server?

No. Encoding, formatting, UUID generation and hashing all run in the browser using the platform’s own APIs; nothing leaves the page.

Which standards are used?

Base64 follows RFC 4648, percent-encoding follows RFC 3986, JSON follows ECMA-404 / RFC 8259, UUIDs follow RFC 4122, and hashing uses the hashes defined in FIPS 180-4 via the browser’s WebCrypto API.

Can I hash a password here?

You can compute a digest, but a fast general-purpose hash is not a password storage scheme. Use a dedicated password-hashing algorithm (bcrypt, scrypt, Argon2) for that; these tools are for checksums, identifiers and integrity checks.

Other tool families