Tree and Flow Glyphs

Every character and every diagram on this page copies on click. Paste them into Figma, Framer, Craft, or code and keep the lines connected.

Copy-ready recipes

Each one is already aligned. Paste into a single text layer set to a monospace font.

Tree

Folders or a sitemap, four levels deep.

Preut Design Studio
├── Studio
│   ├── PDS Website
│   │   ├── Home
│   │   └── Case studies
│   └── TypeFramer
└── Clients
    ├── Anzenna
    ├── Tensor9
    └── Fixel

Tree with status

Same tree, a marker at the end of each row.

tickytools
├── Lattice     ✓ shipped
├── TypeFramer  ◐ in progress
└── tickyTones  ○ idea

Flow

Left to right steps with branches dropping down.

Brief ──▶ Strategy ──▶ Design ──▶ Build
              │                     │
              ▼                     ▼
         Positioning              Ship ✓

Decision

Yes goes right, no drops down.

Draft ──▶ ◇ Approved? ──yes──▶ Ship
          │
          no
          ▼
        Revise

Box card

Rounded card with a checklist inside.

╭──────────────────╮
│  Brand Strategy  │
├──────────────────┤
│  ✓ Positioning   │
│  ◐ Voice system  │
│  ○ Launch plan   │
╰──────────────────╯

Table

Keep every row the same width.

┌────────────┬─────────┬────────┐
│ Task       │ Owner   │ Status │
├────────────┼─────────┼────────┤
│ Moodboard  │ Tim     │ ✓      │
│ Wireframes │ Tim     │ ◐      │
│ Handoff    │ Tim     │ ○      │
└────────────┴─────────┴────────┘

Bars

Progress from block characters, ten cells each.

Strategy  ██████████ 100%
Design    ███████░░░  70%
Build     ███░░░░░░░  30%

The four cells

Every tree row is a stack of 4-character prefixes followed by a name. These are the only four you need. The trailing spaces are part of each one, so copy them whole.

Build a row by adding one Trunk or Gap for each level above, then finish with a Branch or Last branch. Use Trunk when the parent still has siblings coming, Gap when it was the last one.

Glyph library

Tap a character to copy it. Small labels show the Unicode code point.

Tree and box parts

Light weight. The default for trees, tables, and cards.

Rounded corners

Softer cards. Pair with the light lines.

Heavy

For headers, dividers, and anything that needs weight.

Double

Titles and outer frames.

Dashed

Optional paths, soft links, drafts.

Arrows

Direction, flow, and results.

Bent and loop arrows

Then-steps, returns, retries.

Triangles

Solid arrowheads for the end of a line.

Markers

Status, bullets, and decisions. Keep these at the end of a row.

Fills and bars

Density steps, vertical levels, horizontal levels.

Dots and ellipses

Truncated lists and continuation.

Keys

Shortcuts in docs and UI copy.

Registration and crop marks

Print-style marks for corners and targets.

Stars and asterisms

Section breaks and footnote flags.

Superscript and subscript

Footnotes, units, and tiny index numbers.

Enclosed numbers

Numbered steps and callouts.

Marks and units

Legal marks, degrees, and measurement.

Brackets and tags

Wrap a label to make a chip out of text.

Small caps

Lowercase-sized capitals for micro labels. Letters without a small cap form are left out.

Micrographics

Tiny type-built details that make a layout read like a spec sheet. Set them small, set them mono, repeat them on a grid, and let them frame the big type.

Ruler

Tick scale with labels. Zero letter spacing.

├─┬─┬─┬─┬─┼─┬─┬─┬─┬─┤
0         5        10

Spec lines

Dot leaders that line values up in one column.

Typeface ·········· JetBrains Mono
Weight ············ 500
Tracking ·········· 0

Plus frame

Blueprint corners with a figure label.

+──────────────────+
│ FIG. 01  LATTICE │
+──────────────────+

Corner marks

Open corners around a title.

┌                       ┐
       TICKY BOOM
└                       ┘

Meta bar

Reference, revision, date, sheet.

REF 0042 ▪ REV B ▪ 2026.10.25 ▪ SHEET 1/3

Coordinates

Location as ornament.

38°01′N  122°08′W  ·  MARTINEZ CA

Bracket tags

Chips made from punctuation.

[ LIVE ]  ( 04 )  { beta }  ⟦ v2.1 ⟧  ‹ new ›  « prev »  ⟨ 04 ⟩

Numbered steps

Enclosed digits as a row of callouts.

① Brief  ② Strategy  ③ Design  ④ Build

Stepper

Progress dots with labels underneath.

● ─── ● ─── ◐ ─── ○ ─── ○
1     2     3     4     5

Meters

Sparkline, bar, stars, and dots.

Traffic  ▁▂▃▅▆▇█▇▅▃▂
Load     [▰▰▰▰▰▱▱▱▱▱] 50%
Rating   ★★★★☆
Dots     ●●●○○

Barcode texture

Block characters with a code under them.

▌█▌▌█▌█▌▌▌█▌▌█▌█▌█▌▌█
0042-B-261025

Footnote markers

Superscripts in the row, key underneath.

Lattice¹  TypeFramer²  tickyTones³
──────────────────────────────────
¹ Shipped  ² In progress  ³ Idea

Dividers

Seven rules. Repeat the glyph to any length.

────────────────────────
┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
════════════════════════
· · · · · · · · · · · ·
▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪
░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░░▒▓
◆──────────◆──────────◆

Techniques

  • Set them small and mono. 10 to 11px, uppercase, tracking +6% to +10%. Diagrams and rulers still need tracking at 0.
  • Pick one micro style and reuse it. One size, one color, one gap.
  • Pin them to edges and corners, aligned to your grid columns.
  • Use real data as ornament: revision letters, dates, sheet numbers, coordinates.
  • Pair them with one big element. Micro text needs something large to measure against.
  • Keep them muted but legible, at least 4.5:1 contrast, and never the only place important info lives.
  • Hide decorative runs from screen readers with aria-hidden="true". Box-drawing characters get read aloud symbol by symbol.
  • Turn on tabular-nums so digits line up.

Micro label CSS

.micro {
  font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  font-size: 11px;
  line-height: 1.3;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-variant-numeric: tabular-nums;
}
.micro.ruler {
  letter-spacing: 0;
  white-space: pre;
}
<span class="micro" aria-hidden="true">├─┬─┬─┬─┬─┼─┬─┬─┬─┬─┤</span>
<span class="micro">REF 0042 ▪ REV B</span>

Type settings

Most broken diagrams come from the text style, not the characters. Drag the sliders and watch the trunk.

Live specimen

Uses your system monospace so the lines can connect.

Studio ├── Brand │ ├── Voice │ └── Logo └── Web ├── Home └── Work
1.15
0em

Lower line height closes gaps in the trunk. Past about 1.3, most fonts show breaks.

Rules for the design file

  • One text layer per diagram. One layer per line will never stay aligned.
  • Monospace only, and pick a font that includes the Box Drawing block (U+2500 to U+257F).
  • Letter spacing at 0. Any tracking opens gaps in the horizontal runs.
  • Line height 100% to 120%. Paragraph spacing 0.
  • Left aligned. Never centered or justified.
  • Paste ├── └── │ ─ as a test. If a line jumps or changes weight, the font swapped a glyph.
  • Marks like ✓ ◐ ○ can be wider than one cell. Put them at the end of a row, not in the middle of an aligned column.

For code builds

.tree {
  font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  font-size: 14px;
  line-height: 1.15;
  letter-spacing: 0;
  white-space: pre;
  font-variant-ligatures: none;
  tab-size: 4;
}