benzuko

Hooks

All hooks are client-side ('use client').

Hook Returns Purpose
useMounted() boolean True after first client render; guards hydration
useMediaQuery(query) boolean Reactive media-query match
useTheme() { theme, toggleTheme } Reads/writes persisted theme, syncs <html>
useOffers(side) React Query result Fetches P2P offers for buy/sell
useCreateTrade() React Query mutation Opens a trade, invalidates cache, toasts
useToast() { toast, success, error } Ergonomic toast dispatch

Patterns