Developer tools
9 tools, all running in your browser
The five-second jobs that interrupt everything else: reading a token, reshaping a payload, checking an id. All of them run in this tab, which is worth knowing when the thing you are pasting came out of production.
- Base64 encoderConvert text to Base64 and back, with URL-safe output and proper Unicode support.
- Colour converterHEX to RGB to HSL, with the contrast figures you need to use it.
- CSV to JSONTurn a spreadsheet export into JSON, quoted commas and all.
- JSON formatterPretty-print, minify, sort keys and find the line your JSON breaks on.
- JSON to CSVTurn an API response into something a spreadsheet will open.
- JWT decoderRead what is inside a token, without pasting it into someone else’s server.
- Timestamp converterTurn epoch seconds into a date you can read, and back again.
- URL encoderPercent-encode a query value, or read back a URL someone escaped twice.
- UUID validatorFind out whether an identifier is a real UUID, and which version made it.
Why a local tool is the right default here#
Developer utilities get fed the most sensitive material on the site. A JWT is a live credential, a JSON payload is often a real customer record, and a CSV export is frequently the contents of a table someone is under a legal obligation not to hand to a third party. From the outside, a tool that handles all of that carefully looks exactly like one that does not. The only real difference is whether anything leaves the page.
Nothing here does. Every tool in this category is JavaScript running in your browser, and no request carries your input, which you can verify in thirty seconds by opening the network panel and pasting something in. It also explains the absence of a sign-up, a quota and a session that expires: there is no server keeping track of you to enforce any of them.
The usual objection is that a browser cannot do the heavy work, and for this class of tool that stopped being true some time ago. Hashing goes through the Web Crypto API, which is the same set of primitives a server would call. Parsing a megabyte of JSON takes a few milliseconds. Your machine sets the ceiling, and none of these jobs comes close to it.
Picking the right one#
For data that arrives in the wrong shape, start with the format converters: JSON formatting and validation when a payload will not parse and you need the line number, and the CSV and JSON converters when a spreadsheet has to become an API body or the reverse.
For values that arrive encoded, the decoders do the unwrapping. Base64 and URL encoding cover most of what shows up in a query string or a header, and the JWT decoder goes further: it resolves the expiry claims to real dates and will check the signature if you give it the key.
For values you need to produce or check, there are the generators: UUIDs in version 4 or version 7, cryptographic digests of a string or a file, timestamps translated between epoch seconds and a date you can read, and colours converted between hex, RGB and HSL with the contrast ratios worked out.
Frequently asked questions#
Is anything I paste sent to a server?
#
No. There is no server to send it to: these pages are static files and every tool is JavaScript in your tab. Open your browser’s network panel, paste something in, and you will see no request go out. That check is worth doing on any tool that asks for data you care about, this one included.
Can I use these on data I am not allowed to upload?
#
That is the case they are built for. Since the data never leaves your browser, using one of these is closer to opening a text editor than to using a web service. The one thing to be careful with is a shared or managed machine, where a browser extension or a corporate policy may be watching the page even though the page itself is not.
Why is there no sign-up?
#
Because there is nothing to sign up to. No account, no quota and no stored history, since none of these tools has a back end that could hold any of it. Bookmark the page and it will behave the same way in a year.
Do these work offline?
#
Yes, once a page has loaded. Nothing after that point touches the network, so you can pull the plug and carry on working. Only a fresh page load needs a connection.