Create Symmetric List
Mirror a list to create symmetric patterns - full mirror, palindrome, or bi-mirror. JSON, CSV, custom separators. Free, client-side.
- Runs in your browser
- Nothing uploaded
- Free, no sign-up
Mirror a list to create symmetric patterns. 3 modes: full mirror ([A,B,C] → [A,B,C,C,B,A]), palindrome ([A,B,C] → [A,B,C,B,A]), bi-mirror ([A,B,C] → [C,B,A,B,C,B,A]). Custom separators in and out.
How to Use Create Symmetric List
- Paste items into the textarea. Pick the input separator (newline / comma / tab / pipe / space / custom).
- Pick mirror mode. Full = simple reverse-append (length 2n, duplicate center). Palindrome = true palindrome (length 2n-1, center appears once). Bi-mirror = mirror on both ends (length 3n-2, useful for visual wallpaper-style patterns).
- Pick output format. Can match input separator OR switch to JSON / CSV / custom.
- Trim items and skip empty toggles control how the input is parsed.
- Create (or Ctrl+Enter). Stats show input/output counts and verify whether the result is a palindrome.
- Copy or download (extension auto-matches format: .txt / .json / .csv).
Frequently Asked Questions
Where are symmetric lists actually useful?
Three common cases. Test data: palindromic sequences exercise edge cases in algorithms that walk lists from both ends, like two-pointer routines. Design and patterns: symmetric values feed gradient stops, animation keyframes that reverse cleanly, and knitting or bead patterns. And puzzle construction: crossword-style grids and rhythm patterns in music notation often need mirrored sequences, which is tedious to type by hand and trivial to generate.
What’s the difference between full mirror and palindrome mode?
Full mirror: [A,B,C] → [A,B,C,C,B,A]. The center is duplicated, so reading from middle outward you see C, C, B, B, A, A. Length 2n. Palindrome mode: [A,B,C] → [A,B,C,B,A]. The center C appears only once. This is a true lexical palindrome – reads the same forwards and backwards. Length 2n-1.
What’s bi-mirror mode?
Mirrors on both ends: [A,B,C] → [C,B,A,B,C,B,A]. The reversed list is prepended AND appended (with the original sandwiched in the middle, with the original’s first element shared). Useful when you want a pattern that looks symmetric AND extends in both directions. Length 3n-2.
Does the palindrome-validity check verify the result?
Yes. After generating the output, the tool checks whether items[i] === items[n-1-i] for all i. Full-mirror mode always produces valid palindromes. Palindrome mode always produces valid palindromes. Bi-mirror mode produces valid palindromes when the input itself is a palindrome – otherwise the result is symmetric but not palindromic.
Why might my output not be a palindrome in bi-mirror mode?
Bi-mirror prepends the reverse of the input. For input [A,B,C]: reversed is [C,B,A], then concatenated with input minus first → [C,B,A,B,C]. The result reads C-B-A-B-C – that IS a palindrome. Actually for any input, the result is symmetric around the center. Sorry, bi-mirror always produces palindromes too. Disregard the prior caveat.
What separators work for input vs output?
Input separators just need to split the text into items. Output formats include all the separators PLUS JSON (compact and pretty) and CSV (RFC 4180 escaping). Custom field lets you type any string (multi-character, including escaped sequences like " - ").
What’s the maximum output size?
50,000 items. The tool throws an error if the mirrored list would exceed this. Input cap depends on mode: full mirror 25,000 input items (× 2 = 50k out); palindrome 25,001; bi-mirror 16,667 (× 3 – 2 = 49,999).
Can I nest symmetric lists?
Yes – copy the output, paste back into the input, click Create again. [A,B,C] → [A,B,C,C,B,A] → [A,B,C,C,B,A,A,B,C,C,B,A]. Each nesting doubles the length (in full mode).
What does the CSV output look like?
One item per row. Items containing commas, double-quotes, or newlines are wrapped in "..." with internal quotes doubled (RFC 4180). Useful for importing into Excel / Google Sheets.
Is anything uploaded?
No. All processing happens locally in your browser – nothing is sent to a server, logged, or stored, and the tool keeps working offline once the page has loaded.
Related Tools
Add Bullets to List Item →
Add bullet points to list items instantly. Choose from presets or use custom bullets.…
Add List Prefix - Prepend Text →
Add List Prefix list items instantly. Bullets, numbers, arrows, checkboxes, or custom text. Free,…
Add Suffix to List Items →
Add suffix to list items instantly. Periods, commas, punctuation, or custom text. Free, secure,…
Alphabetize List Sort Items Online | A-Z →
Alphabetize list items instantly. Sort A-Z or Z-A, case-sensitive or not. Remove duplicates option.…
Append List Items - Merge Lists →
Append and merge lists instantly. Combine multiple lists with duplicate removal. Free, secure, client-side…
Change List Length →
Change List Length Truncate, pad, or cycle any list to a target length. Free,…
Change List Separator →
Change List Separator and Convert list separators between newline, comma, tab, semicolon, pipe, and…
Chunk List Text →
Split any list into fixed-size chunks with line/numbered/labeled/custom-separator output. Live preview, keep-or-drop trailing chunk.…
Colorized List Item →
Colorized list item online. Turn any list text into a colour-coded HTML block with…
Convert List to Columns →
Arrange list items into 2-10 monospace-aligned columns with horizontal or vertical fill. Free, offline,…
Convert List to Image →
Turn a text list into a PNG or JPEG image with custom fonts, colors,…
Count List Items →
Count list items with frequency analysis, duplicates, unique-only output, TSV export. Free, client-side, instant.