Skip to content

Providers & Context

Stellar Explorer uses React context providers to share global state. The wrap order matters — inner providers can access outer providers but not the reverse.

Providers

The providers wrap the application in this order:

OrderProviderPurposeHook
1 (outer)ThemeProviderDark/light modeuseTheme()
2QueryProviderTanStack Query client
3NetworkProviderCurrent Stellar networkuseNetwork()
4DeveloperModeProviderShow/hide technical detailsuseDeveloperMode()
5 (inner)AnalyticsModeProviderAnalytics view toggleuseAnalyticsMode()
  • NetworkProvider needs QueryProvider to be above it so network changes can trigger query invalidation
  • DeveloperModeProvider sits below NetworkProvider because developer mode preferences may be network-specific
  • ThemeProvider is outermost because it has no dependencies on other providers

Source: src/lib/providers/index.tsx