piapia123
en

Palindrome Checker and Builder

Text

Everything runs locally in your browser — nothing is uploaded

Input
Drop a file here to load its contents
Output

“A man, a plan, a canal: Panama” is a palindrome once you ignore case, punctuation and spaces. The three “ignore” switches are explicit rather than assumed — all on by default, which matches how people read a sentence. Judging is done by code point, not UTF-16 unit, so emoji and combining characters are never split. If a line is not a palindrome you can complete it both ways: `abc` becomes `abcba` (append, using the longest palindromic suffix) or `cbabc` (prepend, using the longest palindromic prefix) — always the shortest completion. You can also list the longest palindromic substring. Everything runs in your browser: nothing is uploaded, no request is made, and it works offline.

Features

  • One word or sentence per line, each with a yes/no verdict
  • Ignore case, punctuation (Latin, CJK and full-width) and whitespace independently
  • Complete both ways: append (abc → abcba) and prepend (abc → cbabc)
  • Shortest completion, based on the longest palindromic suffix or prefix
  • Optional longest palindromic substring with its length
  • Code-point based, so emoji and combining marks stay intact
  • Each line is its own block — copy one row or all of them

How to use

  1. Paste the text to check, one item per line
  2. Toggle the ignore-case, punctuation and whitespace switches as needed
  3. Turn on completion or the longest-substring option
  4. Each line becomes a block; use the row copy button to take one

FAQ

Why are all the “ignore” switches on by default?
Because people do not count case or punctuation when reading a sentence — “A man, a plan” feels like a palindrome. Turn all three off to compare character by character.
Can emoji break the check?
No. Judging is by Unicode code point, so an emoji counts as one character. Comparing UTF-16 units would split a surrogate pair in half, which is exactly what this avoids.
Why two completion directions?
`abc` can become `abcba` or `cbabc`, depending on whether you want the original on the left or the right, so both are offered. The algorithm always returns the shortest completion.
Is anything uploaded?
No. It is all computed in memory in your browser, no request is made, and it works offline.

Related tools