Phase 9b · Tier A

RN-universal Popover pilot

Scaffolded

Anchored, dismissable overlay. The trigger renders inline; the content opens in a transparent RN Modal positioned absolutely using the trigger's window coordinates. No floating-ui dependency.

Side-by-side: trigger + content

shadcn (Radix)
RN

Side + align variants

v1 does not auto-flip on edge collisions — that is a deliberate perf-budget choice.

Semantics

AspectshadcnRNNotes
AnchoringRadix Portal + floating-uimeasureInWindow + RN ModalNo DOM portal, no extra dep
Outside pressRadix dismissPressable backdropTap anywhere to close
Esc / backRadix dismissModal onRequestCloseSame on web and Android
sidetop / right / bottom / lefttop / right / bottom / leftDefault bottom
alignstart / center / endstart / center / endDefault center
sideOffsetNumberNumberPixels off the trigger edge
Auto-flipYes (Radix)No (v1)Documented limitation