Docyrus

NetworkBanner

Animated banner for displaying network connectivity status with retry and dismiss actions.

iOSAndroid
Preview NetworkBanner on your device

Scan with Expo Go

Download Expo Go, then scan the QR code to preview native components.

Installation

pnpm dlx @docyrus/cli add @docyrus/rn-network-banner
Required Packages(1 package)
pnpm add react-native-reanimated

Usage

import { NetworkBanner } from '@/components/docyrus-native/network-banner';

<NetworkBanner
  visible={!isOnline}
  variant="offline"
  onRetry={() => checkConnection()}
  onDismiss={() => setDismissed(true)}
/>

API Reference

PropTypeDefaultDescription
visibleboolean—Whether the banner is visible
variant'offline' | 'slow' | 'reconnecting''offline'Network status variant
messagestring—Custom message (overrides variant default)
onRetry() => void—Retry button handler (shows button when provided)
retryLabelstring'Retry'Retry button text
onDismiss() => void—Dismiss button handler (shows X when provided)
position'top' | 'bottom''top'Banner position on screen
classNamestring—Additional CSS classes

Translation Keys

Built-in copy is read through useUiTranslation() — provide these keys via <UiTranslationProvider>. Without a provider the English fallback is shown.

KeyEnglish fallbackUsed for
ui.networkBanner.offlineYou're offlineoffline message (message prop wins)
ui.networkBanner.slowSlow connectionslow message
ui.networkBanner.reconnectingReconnecting...reconnecting message
ui.networkBanner.retryRetryRetry button (retryLabel prop wins)

Type Exports

TypeDescription
NetworkBannerPropsProps for NetworkBanner component
NetworkBannerVariant'offline' | 'slow' | 'reconnecting'

On this page