agentsclimarketplace

Ascii renderer

Skill dupe-com/skills/skills/ascii-renderer

Generate ASCII art from images or text using shape vector rendering. Creates sharp-edged ASCII art banners, converts photos to terminal art, and renders text with customizable fonts.From its SKILL.md

Install
npx -y skills add dupe-com/skills --skill ascii-renderer

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

4.2 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it

ASCII Art Renderer

Convert images or text to ASCII art using the shape vector algorithm - a technique that produces sharp edges instead of blurry pixelated results.

Based on Alex Harri's ASCII rendering research.

When to Use This Skill

Activate this skill when:

  • User wants to create ASCII text banners (e.g., "make ASCII art saying HELLO")
  • Converting images to ASCII art for terminals or READMEs
  • Generating retro/terminal aesthetic text
  • Building CLI tool splash screens or headers

When NOT to Use This Skill

Skip this skill when:

  • User needs simple block letters (figlet/toilet may be simpler)
  • Color ASCII art is required (this produces monochrome output)
  • User wants emoji or unicode art (this uses standard ASCII characters)

Quick Start

Text to ASCII

# Basic text banner
bun run scripts/render.ts --text "DUPE.COM"

# Filled letters (inverted)
bun run scripts/render.ts --text "HELLO" --invert --cols 80

# Custom font and size
bun run scripts/render.ts --text "WOW" --font "Impact" --cols 60 --rows 12

Image to ASCII

# Convert image
bun run scripts/render.ts photo.png --cols 80 --rows 40

# Demo sphere (no image needed)
bun run scripts/render.ts --demo

Command Reference

OptionShortDefaultDescription
--text-t-Text to render as ASCII art
--cols-c80Output width in characters
--rows-rautoOutput height (auto-calculated for text)
--invert-ifalseInvert colors (filled vs outlined)
--font-fArial BlackFont for text rendering
--contrast-1.5Contrast enhancement (higher = sharper)
--demo-dfalseRender demo sphere
--help-h-Show help

Examples

Text Banner (Outlined)

bun run scripts/render.ts --text "DUPE" --cols 60
@@@@@TTTTTTTT@@@@TTT@@@@TTT@@FTTTTTTT#@@FTTTTTTTT%@@@@@
@@@@@        `#@@   #@@@   #@i  ,w:   %@i  ,;;;;;]@@@@@
@@@@@   ]@@i  `@@   #@@@   #@i  `@@i  ]@i  J@@@@@@@@@@@
@@@@@   ]@@D   @@   #@@@   #@i  `T^   W@i        @@@@@@
@@@@@   ]@@P   @@   #@@@   #@i  ,cssw#@@i  ,=====@@@@@@
@@@@@   J#P'  s@@.  J#@t  ,@@i  `@@@@@@@i  `@@@###@@@@@
@@@@@        ,@@@W.      ,W@@i  `@@@@@@@i        ]@@@@@
@@@@@=======#@@@@@@==www=@@@@#===@@@@@@@#========#@@@@@

Text Banner (Filled/Inverted)

bun run scripts/render.ts --text "DUPE" --cols 60 --invert
     =======w:   a===   a===  a======ww  ,=========:
     @@@P#@@@w  &@@@   J@@@  ]@@@PP#@@# `@@@@PPPPP'
     @@@i  `@@@i &@@D   J@@@  ]@@@,,W@@@ ,@@@lwwwwc
     @@@i   @@@i &@@D   ]@@@  ]@@@@@@@P' `@@@@PPPPP
     @@@l,;w@@@' ]@@@c.,W@@@  ]@@@       ,@@@l.,.,..
     @@@@@@@@P'   T@@@@@@@P'  ]@@@       `@@@@@@@@@i

How It Works: Shape Vectors

Traditional ASCII converters map pixel brightness → single character. This creates blurry results.

Shape vectors capture character geometry using 6 sampling regions per cell:

┌─────────────┐
│  ●₀    ●₁   │   ← Top samples
│  ●₂    ●₃   │   ← Middle samples
│  ●₄    ●₅   │   ← Bottom samples
└─────────────┘

Each ASCII character has a unique 6D "shape signature". The algorithm finds the best-matching character for each image cell based on geometric similarity, not just brightness.

This produces sharp edges that follow the actual boundaries in the image.

Requirements

  • Runtime: Bun (or Node.js with modifications)
  • Dependencies: sharp for image processing
bun add sharp

Available Fonts

Font availability depends on your system. Common options:

  • Arial Black (default, bold and clean)
  • Impact (condensed, strong)
  • Helvetica Bold
  • Georgia
  • Times New Roman
  • Courier New

Further Reading

  • Original blog post - Deep dive into the algorithm
  • Shape vector math and K-d tree optimization details in the source code

What ships with it: 1 file

18.5 KB alongside SKILL.md, 1 of them executable

scripts/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.