All Text & Dev Tools
UUID Generator
Generate one or many random UUIDs, using your browser's own crypto.
OpenHash Generator
SHA-1, SHA-256, SHA-384 or SHA-512 hash of any text, computed in your browser.
OpenPassword Strength Checker
See how strong a password is, and why, without it ever leaving your browser.
OpenBase64 Encoder / Decoder
Encode text to Base64 or decode it back, handling full Unicode correctly.
OpenURL & HTML Entity Encoder
Encode or decode a URL component, or convert HTML entities like & and <.
OpenSocial Media Character Counter
Check a post against X, Instagram, LinkedIn, Facebook, TikTok and YouTube limits at once.
OpenText to Speech
Listen to any text read aloud using your browser's built-in voices.
OpenText Reverser
Reverse text — by character, by word, or flip the word order.
OpenPalindrome Checker
Check if a word or phrase reads the same forwards and backwards.
OpenMorse Code Translator
Translate text to Morse code and back, with an audio playback option.
OpenUpside Down Text Generator
Flip text ʇxǝʇ ǝpᴉsdn upside down for bios and captions.
OpenWord & Character Counter
Live counts, keyword density and a readability score.
OpenCase Converter
UPPERCASE, Title Case, camelCase, snake_case and five more.
OpenJSON Formatter & Validator
Format, minify and validate JSON, with the exact line that broke.
OpenPassword Generator
Strong, random passwords with a strength meter, generated on your device.
OpenSlug Generator
Turn any title into a clean, lowercase, hyphenated URL slug.
OpenJWT Decoder
Read a token's header, payload, algorithm and expiry — nothing uploaded.
OpenDiff Checker
Compare two texts line by line and see exactly what changed.
OpenDuplicate Line Remover
Deduplicate a list, or pull out only the lines that repeated.
OpenFind & Replace
Bulk replace across a whole document, with regex and whole-word options.
OpenCharacter Frequency Counter
Count how often each letter, character or word appears.
OpenVideo Script Timer
How long a script takes to speak, at your pace, with pauses counted.
OpenHashtag Counter & Cleaner
Count and deduplicate hashtags, and check them against each platform limit.
OpenAbout these tools
Twenty-three tools for text you would rather not paste into a random website. Writing and editing: word and character counting, case conversion, find and replace, duplicate removal, sorting, and line-by-line comparison. Developer work: JSON formatting and validation, Base64, URL and HTML encoding, hashing, UUID generation, JWT decoding, and a regular-expression tester.
Everything runs locally, which matters most for the JSON formatter and the password tools — one often holds real production data, the other produces a secret. Neither should ever be typed into someone else's server.
Nothing here needs an account, and nothing you put into any of them is uploaded or stored. Every tool is a single page that does one job, so you can bookmark the one you use and skip this page entirely next time.
The privacy point, which is the real reason these exist
Most of what these tools handle is exactly the material that should not be pasted into an unfamiliar website. A JWT contains a session identity. An API response contains customer records. A configuration file contains internal hostnames. A diff between two contracts contains the contracts. Every hosted formatter, decoder and comparison tool receives all of that on its server, whatever its policy page says.
Everything in this section runs in your browser instead. The text you paste is processed by JavaScript on your own device and is never transmitted, which means these tools can be used on the material where it actually matters rather than only on things that were already public.
A note on the encoding and hashing tools
Two frequent misunderstandings are worth stating plainly, because both cause real security problems. Base64 is not encryption. It uses no key, hides nothing, and any encoded string can be decoded instantly by anyone. It exists to move binary data safely through text-only channels, not to protect it.
Hashing is one-way and cannot be reversed, but a general-purpose hash is the wrong tool for passwords. MD5 and SHA-1 are broken for security purposes — practical collisions have been demonstrated for both — and even SHA-256 is designed to be fast, which is precisely what you do not want when an attacker with a leaked database can test billions of guesses per second. Passwords need a deliberately slow, salted algorithm such as bcrypt, scrypt or Argon2.
Working with text at scale
Several of these tools come into their own on lists rather than single values: deduplicating an export, comparing two versions of a file, replacing a pattern across thousands of lines, or counting character frequencies to find an invisible character breaking a script. When results look wrong on a large input, the cause is almost always something invisible — trailing whitespace, mixed line endings, or smart quotes pasted from a word processor. Checking the before and after counts is the fastest way to catch it.