Which tool for which job
These tools work on text you type or paste, plus a few small files. Grouped by what you are trying to do:
- Reshaping data: JSON formatter to pretty-print, minify and find syntax errors, CSV to JSON and JSON to CSV to move between spreadsheets and APIs.
- Moving documents between formats: DOCX to Markdown, HTML to Markdown and Markdown to HTML.
- Subtitles: SRT to VTT and back, with a time shift for subtitles that run early or late.
- Writing to a limit: Word counter, Case converter, Text diff to see what changed between two drafts, Lorem Ipsum for layouts.
- Web and code: URL encoder, Base64, Slug generator, Color converter, Timestamp converter.
- Secrets and identifiers: Password generator, Hash generator, UUID generator.
- Everyday: QR code generator for links, Wi-Fi and contact cards, Unit converter for length, mass, volume, area, speed, data and temperature.
Formats worth knowing
JSON is the language of APIs. It is parsed here with the browser's native parser, so numbers above 9,007,199,254,740,991 lose precision: long IDs should be strings in the source.
CSV has no real standard beyond RFC 4180: quote any field that contains the delimiter, double any quote inside it. Excel in most of continental Europe and Latin America expects a semicolon rather than a comma, which is why a comma file can land entirely in column A.
Markdown here follows GitHub Flavored Markdown. A single line break does not start a new line; a blank line starts a paragraph. Front matter, footnotes and math are not part of the dialect.
SRT and VTT carry the same cues. SRT uses a comma before milliseconds (00:01:02,500) and numbered cues; VTT needs a WEBVTT header and a dot. Browsers load only VTT in a <track> element.
Base64 turns bytes into 64 safe characters, three bytes into four, so output is about 33% larger. It is an encoding, not protection. Percent-encoding writes unsafe URL characters as %XX: a space is %20, é becomes %C3%A9.
Hashes are fixed-length fingerprints: MD5 is 32 hex characters, SHA-256 is 64. Use SHA-256 to verify downloads; MD5 and SHA-1 only catch accidental corruption. UUIDs come as v4, fully random, or v7, which starts with a millisecond timestamp so values sort by creation time and suit database primary keys.
Everything stays in the page
Every tool in this category runs in your browser as you type. There is no server path, no daily limit and no upload, so pasting an API token, a contract draft, customer exports or a Wi-Fi password is as safe as typing it into a local editor. Once the page has loaded, the tools keep working offline.
Randomness comes from the browser's cryptographic generator: crypto.getRandomValues for passwords, with modulo bias removed, and crypto.randomUUID for UUID v4. The few tools that read files load them into memory: Hash generator and Base64 read any file locally, DOCX to Markdown accepts .docx files up to 50 MB. Very large files can make a phone tab slow.
Password strength comes from length more than variety: four extra characters add about 26 bits, adding symbols adds about 8.
Workflows that chain well
- API response to a spreadsheet: tidy and validate it in the JSON formatter, then convert with JSON to CSV, choosing the semicolon for European Excel.
- Reading a JWT: decode the middle part with Base64 (it accepts the URL-safe form), format the JSON, and paste
expinto the timestamp converter. - A Word document for a static site: DOCX to Markdown, preview with Markdown to HTML, and make the page address with the slug generator.
- Guest Wi-Fi: generate a password with "no ambiguous" on, then print it as a Wi-Fi code from the QR code generator.
- Comparing two configs: format both with the same indent, then open them in Text diff so only real changes show.
- Subtitles from a recording: Transcribe to SRT on the server, then shift or convert them with the subtitle converter.
When the result looks wrong
- A hash does not match the published one. Usually a trailing newline (
echoadds one), Windows line endings or invisible characters copied from a web page. - Leading zeros vanished after CSV to JSON. Number detection turned
02134into2134. Switch it off for identifier columns. - Accented letters turn into symbols in Excel. Import the CSV through the text import dialog and choose UTF-8.
- Base64 will not decode. Remove a
data:...;base64,prefix and join wrapped lines. - A link contains
%2520. It was encoded twice. Decode once. - A timestamp is off by a few hours. A date with a time but no offset is read as your local time. Add
Zor an explicit offset. - Word counts differ from another tool. Numbers like
3.14, URLs and text without spaces are split differently. Use the counter of the form you are submitting to.