Tier B
RN-universal Avatar pilot
ScaffoldedView + 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
| Aspect | shadcn | RN | Notes |
|---|---|---|---|
| Container | <span> | <View> | No image semantics on the container |
| Image | <img alt=...> | <Image accessibilityLabel=...> | alt required on both; empty string for decorative |
| Fallback trigger | Radix sets data-state | Internal context (load/error) | Same behavior: render fallback when image absent/failed |
| Fallback delay | delayMs on Radix.Fallback | delayMs on RnAvatarFallback | Avoids fallback flash while image loads |