UNPKG

tanstack-query-dev-tools-expo-plugin

Version:
115 lines (79 loc) 3.69 kB
<h1 align="center">Tanstack Query DevTools Expo Plugin</h1> <p align="center"> <a href="https://www.npmjs.com/package/tanstack-query-dev-tools-expo-plugin"> <img src="https://img.shields.io/npm/v/tanstack-query-dev-tools-expo-plugin.svg" alt="npm version" /> </a> <a href="https://github.com/LovesWorking/tanstack-query-dev-tools-expo-plugin/blob/main/LICENSE"> <img src="https://img.shields.io/npm/l/tanstack-query-dev-tools-expo-plugin.svg" alt="license" /> </a> </p> <br /> Bring the power of [Tanstack Query DevTools](https://tanstack.com/query/latest/docs/react/devtools) to your Expo and React Native applications. Monitor, debug, and manipulate your queries in real-time across all your devices. ## Features**Full DevTools Experience**: Access all the features from React Query DevTools in your Expo/React Native app ✅ **Multi-Device Support**: Connect and monitor multiple devices simultaneously ✅ **Device Selection**: Easily switch between connected devices or target all at once ✅ **Device Information**: View detailed device info for all connected devices ✅ **Query Management**: Monitor and interact with all your queries in real-time ✅ **Query Manipulation**: Refetch, invalidate, reset, and modify query data on the fly ✅ **Network Simulation**: Toggle device online/offline states to test network resilience ✅ **Error Simulation**: Trigger error states to test error handling ✅ **Loading Simulation**: Trigger loading states to test loading UIs ✅ **Cross-Platform**: Works on iOS, Android and web Expo apps ✅ **Compatible**: Supports both React Query v4 and v5 ![actions](https://github.com/user-attachments/assets/dcedd904-c32a-4931-8fab-30bf9fb1cf1a) ![ui dev tools](https://github.com/user-attachments/assets/b1ad1a3f-f30f-436e-a51d-c32b71db0b8c) ## Installation ```bash npm install tanstack-query-dev-tools-expo-plugin --save-dev ``` ## Compatibility This plugin supports both Tanstack Query v4 and v5, utilizing APIs that have remained stable across these versions. ### Requirements #### Peer Dependencies - `@tanstack/react-query`: ^4.0.0 || ^5.0.0 - `expo`: Any version ## Usage Simply import and use the `useSyncQueries` hook in your app: ```typescript import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import { useSyncQueries } from 'tanstack-query-dev-tools-expo-plugin'; const queryClient = new QueryClient(); export function App() { // Initialize the dev tools useSyncQueries({ queryClient }); return ( <QueryClientProvider client={queryClient}> {/* Your app components */} </QueryClientProvider> ); } ``` ## Press Shift + M in your terminal to show your expo dev tools and select `Open tanstack-query-dev-tools-expo-plugin` ![image](https://github.com/user-attachments/assets/cfa225f2-a222-4bfa-abc8-7038ec3616f8) ## DevTools Capabilities ### Monitoring Queries - View active, inactive, and stale queries - Inspect query data, status, and metadata - Track query updates in real-time ### Query Manipulation - Manually trigger refetches - Invalidate queries to force refetches - Reset query cache entries - Modify query data directly ### Debugging Tools - Simulate error states - Simulate loading states - Toggle network connectivity - View detailed query timings ### Device Management - Connect multiple devices simultaneously - View detailed device information - Target specific devices for actions - Apply changes across all connected devices ## License MIT ## Author [LovesWorking](https://github.com/LovesWorking) ## Repository [GitHub Repository](https://github.com/LovesWorking/tanstack-query-dev-tools-expo-plugin)