feat(ascii): colored ASCII output (HTML + 24-bit ANSI)#12
Merged
Conversation
imageToAscii now samples per-cell RGB and gains a `color` option: 'none' (default, byte-identical plain text — README-safe), 'html' (per-glyph <span> for the web preview), and 'ansi' (24-bit truecolor escapes for terminal banners, e.g. a CLI startup screen). Studio gains a Color toggle (colored web preview) plus Copy ANSI / .ans download; the plain Copy/.txt path is unchanged. ANSI emits a color code only when it changes and resets each line. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds colour to the ASCII view so the mark can render like a coloured terminal mascot (e.g. the clikae startup banner).
What
imageToAsciisamples per-cell RGB and gainscolor?: 'none' | 'html' | 'ansi':none(default) — plain text, byte-identical to before (README easter-egg safe; existing tests unchanged).html— each glyph wrapped in<span style="color:#rgb">for the web preview (glyphs HTML-escaped).ansi— 24-bit truecolor escapes for a terminal banner; emits a colour code only when it changes, resets each line with\x1b[0m, leaves blank rows empty.AsciiCompare's newasciiHtmlprop) plus Copy ANSI / .ans download. Plain Copy / .txt behaviour is intentionally unchanged.Tests
none== default). Full suite: 193/193 green.tscclean onascii.ts.Dogfood
.ans→cat banner.ansin clikae's startup for a coloured banner.🤖 Generated with Claude Code