Bitcoin Address Component

React component

A reusable, interactive React component for displaying bitcoin addresses with proper formatting, copy-to-clipboard, QR generation, and accessibility built in. Used across multiple bitcoin product surfaces I've designed.

The component supports Native SegWit (Bech32) P2WSH and Wrapped SegWit (P2SH-P2WSH) address types, truncates intelligently for narrow contexts, and includes proper monospace formatting using Source Code Pro.

Bitcoin Address Component preview

View on GitHub →

Process notes

Bitcoin addresses are high-risk interface content: a user needs to recognize the value, verify enough of it, copy it confidently, and avoid layout breakage across dense product surfaces. I treated the component as a trust-building pattern, not a decorative code block.

Problem

The component needed to make a long, unfamiliar string feel legible and safe inside product flows where mistakes are expensive.

Design Principles

I prioritized clear hierarchy, predictable truncation, fast copy feedback, QR handoff, keyboard access, and screen reader labeling.

Iteration

I pressure-tested edge cases across narrow containers, full-address review, copied states, and documentation clarity before treating the pattern as reusable.