Tier B

RN-universal Avatar pilot

Scaffolded

View + Image + Text fallback. No Radix — image-load fallback is managed by a small internal context that tracks load/error state. The compound API matches the shadcn Avatar exactly.

Side-by-side: loaded image

shadcn (Radix Avatar)
TL
Student portrait
RN (View + Image via RN Web)
TL
Student portrait

Side-by-side: fallback (broken URL)

shadcn
UN
RN
UN

Size variants via className

SM
MD
LG
XL

Semantics

AspectshadcnRNNotes
Container<span><View>No image semantics on the container
Image<img alt=...><Image accessibilityLabel=...>alt required on both; empty string for decorative
Fallback triggerRadix sets data-stateInternal context (load/error)Same behavior: render fallback when image absent/failed
Fallback delaydelayMs on Radix.FallbackdelayMs on RnAvatarFallbackAvoids fallback flash while image loads