X
⚙️

Dev Tools

Base64 · URL · Hash · UUID · JWT · Timestamp — handy developer utilities that run entirely in your browser.

🔒 100% Private: everything runs on your device — nothing is uploaded.

A complete set of Dev Tools that run right in your browser

These Dev Tools bundle six of the small jobs that developers reach for every single day into one page: Base64 encoding and decoding, URL percent-encoding, hash generation, UUID creation, JWT inspection and Unix timestamp conversion. Instead of hunting for a different website for each task, installing a command-line utility, or pasting sensitive strings into a random online box, you get all six in a single tabbed interface that loads instantly and works the same on a phone, tablet or laptop.

The point of the page is convenience without compromise. Every calculation happens locally using the browser's own JavaScript and the built-in Web Crypto API, so a token, a password or an internal URL you paste here never travels to a server. That makes the tools just as suitable for a quick check during a coding session as for inspecting something you would not want leaving your machine. There is no account, no quota and no waiting — type or paste, and the result appears as you go.

How to use it

  1. Pick a tab at the top: Base64, URL Encode, Hash, UUID, JWT Decoder or Timestamp.
  2. For Base64 and URL, choose Encode or Decode, then type or paste your text — the output updates live and a Copy result button puts it on your clipboard.
  3. For Hash, paste any text and read off the MD5, SHA-1, SHA-256 and SHA-512 digests, each with its own copy button.
  4. For UUID, set how many you need (1–100) and press Generate UUIDs, then Copy all.
  5. For JWT, paste a token in the header.payload.signature form to see the decoded header and payload as formatted JSON.
  6. For Timestamp, enter a Unix number to get a readable date, or pick a date to get the Unix value; a live clock shows the current time in seconds and milliseconds.

What Base64 and URL encoding are actually for

Base64 rewrites raw bytes using only 64 safe characters (A–Z, a–z, 0–9, plus + and /), which lets binary data ride safely inside text-only channels such as JSON fields, data URIs, email attachments or HTML. It is an encoding, not encryption — anyone can decode it — so it protects formatting, not secrets. URL encoding solves a related problem: characters like spaces, &, ? and # have special meaning in a web address, so they are replaced with percent codes (a space becomes %20). Use the Decode mode here to read a messy query string, and Encode mode to safely build one. Both tools handle full Unicode correctly, so emoji and accented characters survive the round trip.

Hashes, UUIDs and JWTs explained

A hash turns any input into a fixed-length fingerprint. The same text always produces the same digest, but you cannot reverse the digest back into the text, which makes hashes ideal for verifying that a download or a message has not changed. MD5 and SHA-1 are shown for compatibility with older systems and checksums, but they are considered broken for security work — prefer SHA-256 or SHA-512 when integrity actually matters. A UUID (version 4) is a 122-bit random identifier you can generate freely without a central authority and reasonably trust to be unique, which is why they are used for database keys, request IDs and file names. A JWT is three Base64url segments joined by dots; this decoder reveals the header and payload so you can read the claims and expiry, but it deliberately does not verify the signature — that step needs the secret or public key and should always be done on your server.

Understanding Unix timestamps

A Unix timestamp counts the seconds elapsed since midnight UTC on 1 January 1970, the moment most computers treat as the start of time. Because it is a single number with no time zone attached, it is the cleanest way to store and compare moments in logs, databases and APIs. The converter accepts both seconds and milliseconds — it detects which you mean by the size of the number — and shows the result in your local time, in UTC and as an ISO 8601 string, so you can match whatever format your tooling expects.

Why everything stays on your device

Each tool is pure client-side JavaScript: nothing you enter is uploaded, logged or stored after you close the tab. That privacy is the main reason to use a browser tool for tasks like decoding a real JWT or hashing a sensitive string, where a remote service would mean handing your data to a third party. The trade-off is small — extremely large inputs depend on your device's memory rather than a powerful server — but for everyday developer tasks the local approach is faster, safer and always available, even offline once the page has loaded.

FAQ

Are these developer tools free?

Yes, completely free with no signup, no limits and no watermarks. Everything runs locally in your browser, so your data is never uploaded.

Is the hash generator secure?

The SHA-1, SHA-256 and SHA-512 digests are computed on your device using the browser's built-in Web Crypto API, and the MD5 digest is calculated in JavaScript locally. Nothing is sent to a server. For security-sensitive work choose SHA-256 or SHA-512, since MD5 and SHA-1 are no longer considered safe against deliberate collisions.

Does the JWT decoder verify signatures?

No. It decodes and displays the header and payload of a JWT for inspection only, and your token stays in your browser. Verifying the signature requires the signing secret or public key and should always be done server-side, never in a public web tool.

Is Base64 a form of encryption?

No. Base64 is reversible encoding designed to carry binary data through text-only channels — anyone can decode it. Use it to safely transport data, not to protect secrets. If you need confidentiality, encrypt the data first and then Base64-encode the result if a text format is required.

Are the generated UUIDs really unique?

The tool creates version 4 UUIDs, which are 122 bits of cryptographically strong random data from the browser. The chance of two colliding is so small that they are treated as unique in practice, which is why they suit database keys, request IDs and file names. They are random rather than sequential, so they should not be used where a sortable, time-ordered ID is needed.

Why does the timestamp accept both seconds and milliseconds?

Unix time is sometimes stored in seconds (a 10-digit number) and sometimes in milliseconds (13 digits). The converter looks at the size of the value and interprets it accordingly, then shows the date in your local time, in UTC and as an ISO 8601 string so it matches whatever your code or database expects.

🧰

More tools