Htpasswd Generator
Generate .htpasswd lines with bcrypt, APR1-MD5 or SHA-1.
Reveal tabs, non-breaking spaces and zero-width characters in your text.
Removes zero-width characters and the BOM, converts odd spaces to ordinary ones, and strips trailing whitespace.
The Whitespace Visualizer makes visible the characters that survive every code review because there is nothing to see — a non-breaking space that breaks the parser, a zero-width space that makes two identical strings differ, a BOM that breaks your headers.
Every invisible character in your text, made visible: spaces as dots, tabs as arrows, and the thirty-odd others that take up space — or none — without showing anything at all.
These are the bugs that survive every code review, because there is nothing to see. A non-breaking space pasted from a document looks exactly like a space and breaks the parser. A zero-width space inside a string takes no width at all, so two strings that appear identical compare as different. A byte order mark at the start of a PHP file produces output before the headers and there is nothing in the editor to explain it. Each one found here is named, located by line and column, and explained — along with line endings, mixed indentation and trailing whitespace, with a one-click clean-up.
Every space variant, every zero-width character, the direction marks and the separators that break JavaScript string literals.
Each one by line and column, with what it is and how it usually got there.
CRLF, LF, CR or mixed — the last being what produces a diff where every line changed.
A hard error in Python, and everywhere else a file that looks aligned only to whoever wrote it.
Zero-width characters removed, odd spaces converted, trailing whitespace stripped and the BOM taken off.
Code, a config file, or anything that is behaving oddly.
Every invisible character replaced by a visible symbol.
Each suspicious character named, located and explained.
Remove the zero-width characters, convert odd spaces and strip trailing whitespace in one step.
A character that takes no width at all. It arrives by copying from a web page, a PDF or a chat client, and it makes two apparently identical strings compare as different — which is a genuinely hard bug to see.
Because it is a different character from a space, and a parser looking for U+0020 does not accept U+00A0. It is the usual cause of a "syntax error" on a line that looks completely normal.
A byte order mark at the start of a file. In PHP it produces output before your headers; in a shell script it breaks the shebang; in a CSV it corrupts the first column name. Nothing in your editor shows it.
In Python it is a hard error. Elsewhere it is merely a file that looks aligned to you and misaligned to everyone whose tab width differs — which is why .editorconfig exists.
What people who use the Whitespace Visualizer think of it. Reviews come from visitors and are posted as written.
No ratings yet
Yours would be the first.
0 reviews
Newest first
No reviews yet
Be the first to rate the Whitespace Visualizer. It takes half a minute and no account.
Write the first reviewGenerate .htpasswd lines with bcrypt, APR1-MD5 or SHA-1.
Build and sign a JWT with HS256, HS384 or HS512 for testing.
Network, broadcast and host range from any CIDR block.
Turn any text into a safe slug, filename, anchor or branch name.
Check YAML parses and find the line where the indentation goes wrong.
Serialise a JSON object into a percent-encoded URL query string.
Turn any text into a JSON string literal, or unwrap one back to plain text.
Find the MIME type for any file extension, or the extensions for a type.