terminal-ui-design

Use when creating CLI tools, terminal user interfaces (TUI), or any command-line applications. Load for terminal UI design, ASCII art, color schemes, box drawing characters, and polished terminal output. Also use for refactoring boring CLIs into distinctive experiences.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "terminal-ui-design" with this command: npx skills add ingpoc/skills/ingpoc-skills-terminal-ui-design

Terminal UI Design

Create distinctive, production-grade terminal interfaces with intentional aesthetics. Don't just print text—craft an experience.

Quick Start

Before coding, choose a bold aesthetic direction:

StyleVibeColorsBorders
CyberpunkNeon, futuristicHot pink #ff00ff, cyan #00ffff, purple #1a0a2eBlock █▀▄
Amber TerminalVintage CRT#ffb000 on blackDouble ╔═╗
Minimalist ZenClean, focusedNord palette, cool bluesRounded ╭─╮
Retro MainframeCorporate, formalGreen on blackASCII-only +-+
Synthwave80s nostalgiaPurple, pink gradientsHeavy ┏━┓
Monochrome BrutalistStark, boldSingle color + intensityHeavy ┏━┓

Pick ONE direction and execute it with precision.

Design Thinking Checklist

QuestionDecision Point
PurposeWhat problem? Who uses it? What workflow?
TonePick extreme: cyberpunk, zen, retro, maximalist, playful
ConstraintsPython Rich, Go bubbletea, Rust ratatui, ANSI codes?
DifferentiationWhat makes this UNFORGETTABLE?

Box Drawing & Borders

Choose borders that match your aesthetic:

Single:     ┌─────┐ │   └─────┘  Clean, modern
Double:     ╔═════╗ ║   ╚═════╝  Bold, formal, retro
Rounded:    ╭─────╮ │   ╰─────╯  Soft, friendly
Heavy:      ┏─────┓ ┃   ┗─────┛  Strong, industrial
Dashed:     ┄┄┄┄┄┄ ┆              Light, airy
ASCII:      +-----+ |   +-----+  Retro, universal
Block:      █▀▀▀▀█ ▄   ▀▀▀▀▀    Chunky, brutalist

Pro tip: Use decorative corners: ◆ ◈ ✦ ⬡ ◢◣◤◥

Color Strategies

StrategyWhen to UseTechnique
ANSI 16Universal compatibilityClassic palette, craft unique combos
256-colorRich but portableGradients, subtle variations
True colorModern terminalsFull spectrum, smooth transitions
MonochromeElegant constraintSingle color, vary intensity

Create atmosphere:

  • Background color blocks for sections
  • Gradient fills: ░▒▓█
  • Semantic color (avoid cliché red=bad, green=good)
  • Reverse video for emphasis
  • Dim for secondary, bold for primary

Typography

The terminal is ALL typography:

TechniqueEffectExample
ASCII art headersDramatic introfiglet style banners
Text weightHierarchyBold, dim, normal
DecorationEmphasisUnderline, italic, strikethrough
Letter spacingHeadersH E A D E R
CaseVoiceALL CAPS headers, lowercase body
Unicode symbolsRichness→ • ◆ ★ ⚡ λ ∴ ≡ ⌘ ✓ ✗
Custom bulletsPersonality▸ ◉ ✓ ⬢ › instead of -
Block:    ███████╗██╗██╗     ███████╗
Slant:    /___  / / // /     / ____/
Small:    ╔═╗┌─┐┌─┐
Minimal:  [ HEADER ]

Layout & Spatial Composition

Break free from single-column output:

ElementUsage
Panels & WindowsDistinct regions with borders
ColumnsSide-by-side information
TablesAligned data, Unicode table chars
WhitespaceGenerous padding, breathing room
DensityMatch purpose—dense dashboards, sparse wizards
HierarchyVisual distinction: primary, secondary, chrome
AsymmetryOff-center titles, weighted layouts

Motion & Animation

ElementExamples
Spinners⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏, ⣾⣽⣻⢿⡿⣟⣯⣷
Progress bars▓░, █▒, [=====> ], ◐◓◑◒
Typing effectsCharacter-by-character reveal
TransitionsWipe effects, fade with color intensity
Live updatesStreaming data, real-time charts

Data Display

TypeTechnique
Sparklines▁▂▃▄▅▆▇█ inline mini-charts
Bar chartsHorizontal bars with block chars
TablesSmart sizing, alternating rows, aligned nums
Trees├── └── │ hierarchies
Status● green, ○ empty, ◐ partial, ✓ complete
Gauges[████████░░] with percentage

Decorative Elements

Dividers:   ───── ═════ •••••• ░░░░░░ ≋≋≋≋≋≋
Sections:   ▶ SECTION, [ SECTION ], ─── SECTION ───, ◆ SECTION
Textures:   · ∙ ░ patterns for backgrounds
Icons:       (if Nerd Fonts available)

Anti-Patterns to Avoid

❌ Avoid✅ Instead
Plain unformatted textStyled output with intent
Default colorsCohesive palette
Generic [INFO] prefixesStyled prefixes with icons
Simple ---- dividersUnicode dividers ───── ═════
Walls of textStructured panels and sections
Generic progressCreative spinners and bars
Boring helpFormatted, aligned help text
Inconsistent spacingPrecise alignment

Library Quick Reference

LanguageLibraries
PythonRich, Textual, curses, prompt_toolkit
GoBubbletea, Lipgloss
RustRatatui
Node.jsInk, Blessed, cliui
PureANSI escape codes

ANSI Escape Codes

\x1b[1m       Bold
\x1b[3m       Italic
\x1b[4m       Underline
\x1b[31m      Red foreground
\x1b[38;2;R;G;Bm  True color (RGB)
\x1b[2J       Clear screen
\x1b[H        Cursor home

Implementation Pattern

  1. Choose aesthetic first (cyberpunk, zen, retro, etc.)
  2. Define palette (2-3 colors + background)
  3. Select border style (single, double, rounded, block)
  4. Create reusable components (panel, table, status)
  5. Apply consistently across all output

Resources

FileWhen to Load
references/box-drawing.mdNeed border character reference
references/ansi-codes.mdNeed escape code reference
references/color-palettes.mdNeed pre-defined palettes

Exit Criteria (Code Verified)

  • Output has intentional aesthetic (not generic)
  • Cohesive color palette used throughout
  • Borders and typography match chosen style
  • No plain text without formatting
  • Anti-patterns avoided

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

async-programming-skill

No summary provided by upstream source.

Repository SourceNeeds Review
General

scroll-storyteller

No summary provided by upstream source.

Repository SourceNeeds Review
General

browser-testing

No summary provided by upstream source.

Repository SourceNeeds Review
General

postgresql-skill

No summary provided by upstream source.

Repository SourceNeeds Review