From 1960s teletypes to modern Unicode masterpieces — explore the history, techniques, and craft of making art with nothing but text characters.
// A timeline of text-based art from typewriters to the internet age
// The methods and principles behind great ASCII art
Uses characters like / \ | - _ to draw outlines and edges. Think of it as vector drawing with text. Best for diagrams, logos, and architectural forms. The key is choosing characters whose angle matches the line you need.
/\
/ \
/ \
/______\
| __ |
| | | |
|_|__|_|
Uses character density for grayscale shading. Characters are ranked by how much ink they put on screen: . : - = + * # % @ goes from lightest to darkest. Used for portraits and photographic conversions.
@@@@@@@@ @@####@@ @@#..#@@ @@#..#@@ @@####@@ @@@@@@@@
Unicode block elements (▀ ▄ █ ░ ▒ ▓) give you sub-character pixel control. Each character cell can be split into halves, giving 2× vertical resolution. This is how modern terminal images achieve photo-like quality.
▓▓▓░░░▓▓▓ ▓▓░░░░░▓▓ ░░░▒▒░░░░ ░░▒▒▒▒░░░ ▓░░▒▒░░▓▓ ▓▓▓░░▓▓▓▓
Large decorative text using small characters to form big letters. FIGlet (Frank, Ian, and Glenn's LETters) is the classic tool, with hundreds of fonts. Great for headers, logos, and terminal splash screens.
_ _ ___ | | | |_ _| | |_| || | | _ || | |_| |_|___|
Japanese-style text faces read without tilting your head, using the full Unicode set for maximum expression. A distinct tradition from Western emoticons like :-) that uses creativity within a single line of text.
(づ ̄ ³ ̄)づ ┬─┬ノ( º _ ºノ) (╯°□°)╯︵ ┻━┻ ¯\_(ツ)_/¯ ⊂(◉‿◉)つ
Creates the illusion of three dimensions using diagonal lines and careful spacing. Isometric projections use / and \ at consistent angles. Advanced artists combine this with shading for remarkably convincing depth.
___
/ \
/ \
/ /\ \
/ / \ \
/___/ \__\
\ \ / /
\___\ /__/
Most monospace fonts are ~2× taller than wide. A "square" in ASCII art is 2 columns × 1 row. Forgetting this is the #1 beginner mistake — circles look like ovals if you don't compensate.
Spaces are as important as characters. Think of ASCII art as negative space sculpting. Leading spaces set horizontal position; blank lines create vertical gaps. Trailing spaces can matter for alignment in some contexts.
Your art will only look correct in monospaced fonts. Different monospace fonts render characters at slightly different widths/heights. Test in multiple terminals. Some characters like ─ vs - render differently across systems.
// The essential ASCII art character palette, ranked by density and usage
| Char | Density | Usage Notes |
|---|---|---|
| . | ~5% | Lightest visible mark. Highlights, sky, light reflections. |
| · | ~8% | Middle dot. Subtler than period, great for textures. |
| : | ~12% | Light shading, transitions from empty to filled areas. |
| - | ~15% | Horizontal lines, light horizontal fill, water surfaces. |
| = | ~25% | Medium horizontal, good for borders and mid-tone fills. |
| + | ~30% | Medium density. Crosshatching, moderate shading. |
| * | ~35% | Stars, medium fill, organic textures. |
| # | ~55% | Heavy fill, dark areas. The workhorse of ASCII shading. |
| % | ~60% | Very dense. Shadows, dark masses. |
| @ | ~75% | Darkest standard ASCII char. Deepest shadows, solid fills. |
| █ | 100% | Unicode full block. Absolute black. Maximum density. |
| Char(s) | Category | Usage |
|---|---|---|
| / \ | Diagonals | Slopes, roofs, faces, curves (approximated) |
| | ! | Verticals | Walls, stems, edges, separation lines |
| _ - | Horizontals | Floors, underlines, flat surfaces |
| ( ) | Curves | Rounded forms, faces, bodies, enclosures |
| { } | Wide Curves | Larger curves, decorative brackets |
| ' ` , | Details | Small marks, accent points, connectors at corners |
| ^ v < > | Arrows | Direction, points, small triangular shapes |
| ~ ≈ | Waves | Water, hair, organic undulating forms |
| ░ ▒ ▓ | Block Shade | Unicode shading at 25%, 50%, 75% density |
| ▀ ▄ | Half Blocks | 2× vertical resolution trick for pixel art |
| ─ │ ┌ ┐ └ ┘ | Box Drawing | Clean borders, tables, UI frames |
// Classic and modern ASCII art examples — hover to admire
,--./,-.
/ # \
| |
\ /
`._,._,'
,' `.
/ () () \
| __ __ |
| / \ / \ |
\ \__/ \__/ /
`. ,'
`-.____,-'
. . . . . . . . . + .
. . : . .. :. .___---------___.
. . . . :.:. _".^ .^ ^. '.. :"-_. .
. : . . .:../: . .^ :.:\.
. . :: +. :.:/: . . . . . .:\
. : . . _ :::/: . ^ . . .:\
.. . . . - : :.:./. . .:\
. . . :..|: . . ^. .:|
. . : : ..|| . . . !:|
. . . . ::. ::\( . :)/
. . : . : .:.|. ###### .#######::|
:.. . :- : .: ::|.####### ..########:|
. . . .. . .. :\ ######## :######## :/
. .+ :: : -.:\ ######## . ########.:/
. .+ . . . . :.:\. ####### #######..:/
:: . . . . ::.:..:.\ googol.goog" :/
. . . .. : -Loss/ .. googol googol .googol
. : . . . . . :. :.\googl googol .googol :/
. . . . : . :. :.:\ :/
. . . . : . :: :. :.:.:\ :/
. . . . : : . :. :. : .:.\ :/
. : . . . : . :. :. : ..:. \ /
┌─────────────────────┐
│ ╔═══╗ ┌───┐ ◊◊ │
│ ║ A ║ │ B │ ◊◊ │
│ ╚═══╝ └───┘ ◊◊ │
│ │
│ ┌──┬──┬──┐ ╭───╮ │
│ │▓▓│░░│▒▒│ │ │ │
│ ├──┼──┼──┤ │ C │ │
│ │░░│▒▒│▓▓│ │ │ │
│ └──┴──┴──┘ ╰───╯ │
└─────────────────────┘
/\_/\
____/ o o \
/~____ =ø= /
(______)__m_m)
/\_____/\
/ o o \
( == ^ == )
) (
( )
( ( ) ( ) )
(__(__)___(__)__)
╔══════════════════════╗
║ ▄▄▄▄▄ ▄▄▄▄▄ ▄▄▄ ║
║ █ █ █ █ █ █ ║
║ █▄▄▄█ █▄▄▄█ █▄█ ║
║ ║
║ ░░░▒▒▒▓▓▓███▓▓▓▒▒ ║
║ ░░░▒▒▒▓▓▓███▓▓▓▒▒ ║
║ ║
║ SYSTEM STATUS: OK ║
╚══════════════════════╝
_.---._
.' '.
/ ^ ^ \
; (o o) ;
| \_/ |
; ,---, ;
\ ' ' /
'. .'
'-...-'
/| |\
/ | | \
'--' '--'
// Click or drag to draw your own ASCII art on the canvas below
// Type text and see it rendered as a large ASCII banner in real-time
// ASCII art comes alive — select an animation to watch
// Test your ASCII art knowledge — 8 questions