Catalog
27 components on one engine, grouped by what they're for. Each installs as plain source into components/ascii/. Drop one in as it is, read it for technique, or point your agent at one and ask for a variation. For anything not here, write your own.
Backgrounds
Full-bleed animated fields for heroes, sections and cards.
Images
Photos, video and the camera, redrawn in characters.
Image
Any photo as live ASCII. Dither, colour from the source, reveal the original on hover.
Video
Video files, streams or the webcam, converted every frame.

Image Compare
Drag a divider between a photo and its ASCII version.
Scroll Reveal
An image that resolves from coarse glyphs to the photo as it scrolls into view.
Marquee
An endless marquee of words or logos, set in glyphs.
Type
Display type and text effects made of glyphs.
Interface
Terminal-style pieces for real UI: loaders, progress and frames.
Progress
Progress bars with eighth-block precision, in five styles.
Spinner
Terminal loading spinners: braille, line, arc, quadrant and more.
All systems normal.
Box
Box-drawing frames that stretch to any content.
Button
Buttons framed in brackets, boxes, arrows or underlines that come alive on hover.
Skeleton
Loading placeholders that shimmer through shade blocks.
Avatar
Generative identicons from any string, in block glyphs.
Divider
Horizontal rules in box-drawing and pattern glyphs, with an optional label.
Charts
Data drawn with block elements, one character per value.
Chart
Sparklines and labelled bar charts drawn with block elements.
| Point | today | yesterday |
|---|---|---|
| 00:00 | 344 | 319 |
| 01:00 | 221 | 253 |
| 02:00 | 325 | 246 |
| 03:00 | 417 | 288 |
| 04:00 | 420 | 344 |
| 05:00 | 296 | 309 |
| 06:00 | 388 | 297 |
| 07:00 | 461 | 296 |
| 08:00 | 490 | 407 |
| 09:00 | 737 | 371 |
| 10:00 | 809 | 589 |
| 11:00 | 1022 | 641 |
| 12:00 | 1150 | 846 |
| 13:00 | 1347 | 1074 |
| 14:00 | 1369 | 1151 |
| 15:00 | 1298 | 1123 |
| 16:00 | 1220 | 1166 |
| 17:00 | 939 | 998 |
| 18:00 | 797 | 934 |
| 19:00 | 692 | 615 |
| 20:00 | 463 | 610 |
| 21:00 | 356 | 362 |
| 22:00 | 275 | 301 |
| 23:00 | 325 | 269 |
Line Chart
ASCII line charts with axes, several series and a scrubbing readout.
| Point | search | direct | social |
|---|---|---|---|
| 00:00 | 155 | 89 | 30 |
| 01:00 | 162 | 62 | 32 |
| 02:00 | 111 | 101 | 69 |
| 03:00 | 150 | 84 | 58 |
| 04:00 | 102 | 116 | 51 |
| 05:00 | 155 | 115 | 46 |
| 06:00 | 179 | 148 | 49 |
| 07:00 | 179 | 246 | 40 |
| 08:00 | 263 | 305 | 52 |
| 09:00 | 263 | 318 | 60 |
| 10:00 | 399 | 396 | 44 |
| 11:00 | 493 | 381 | 46 |
| 12:00 | 579 | 347 | 80 |
| 13:00 | 586 | 309 | 88 |
| 14:00 | 654 | 277 | 102 |
| 15:00 | 613 | 238 | 144 |
| 16:00 | 601 | 181 | 183 |
| 17:00 | 450 | 137 | 232 |
| 18:00 | 397 | 109 | 251 |
| 19:00 | 309 | 83 | 289 |
| 20:00 | 202 | 119 | 249 |
| 21:00 | 138 | 113 | 245 |
| 22:00 | 186 | 75 | 179 |
| 23:00 | 119 | 111 | 136 |
Area Chart
Stacked or overlapping areas: ASCII lines over glyph fills.
| Group | deploys |
|---|---|
| Jan | 42 |
| Feb | 58 |
| Mar | 51 |
| Apr | 63 |
| May | 49 |
| Jun | 70 |
| Jul | 66 |
| Aug | 74 |
Column Chart
Vertical bars stacked from square shade blocks, grouped by label, that build up block by block.
| Slice | Value | Share |
|---|---|---|
| chrome | 412 | 64% |
| safari | 126 | 20% |
| firefox | 58 | 9% |
| edge | 31 | 5% |
| other | 17 | 3% |
Pie Chart
A pie or donut in braille that sweeps in clockwise and pops a slice out on hover.
Heatmap
A contribution-style calendar grid in shade blocks.
Gauge
A dial for one value, drawn in braille.
40 intervals from Sep 17 to Oct 26: 1 with an outage, 2 degraded.
40 intervals from Sep 17 to Oct 26: 3 with an outage, 6 degraded.
Uptime
Status bars for uptime over time, one block per day.