rn-api-inspector
v0.1.1
Published
inspect apis in real time
Readme
rn-api-inspector
Inspect API calls (fetch + axios) in real time inside your React Native app.
Installation
npm install rn-api-inspector
# Or
yarn add rn-api-inspectorExpo Users
This library works with Expo! Since it relies on @react-native-clipboard/clipboard, you'll need to use Development Builds (recommended) or run npx expo prebuild.
npx expo install @react-native-clipboard/clipboardWrap your app with InspectorProvider and call useApiInspector() once.
If you use axios, pass your instance to the hook for automatic interception.
import axios from 'axios';
import { InspectorProvider, useApiInspector } from 'rn-api-inspector';
export default function App() {
useApiInspector(axios); // Optional: pass axios instance
return <InspectorProvider>{/* your app */}</InspectorProvider>;
}Manual Axios Setup
If you prefer manual control or matching specific instances later:
import axios from 'axios';
import { attachAxiosInterceptor } from 'rn-api-inspector';
attachAxiosInterceptor(axios);Advanced (manual start/stop)
Use this if you want explicit lifecycle control (e.g. only enable in a specific screen).
import axios from 'axios';
import { startApiInspector } from 'rn-api-inspector';
const { stop } = startApiInspector({
enabled: __DEV__,
axios, // optional
autoAttachAxios: false, // optional
});
// later (important!)
stop();Notes
- Dev-only by default:
useApiInspector()enables itself only when__DEV__is true. - Cleanup supported:
startApiInspector()returns astop()function that detaches interceptors. - Payload safety: large response bodies are truncated to keep the UI responsive.
- Header redaction by default: sensitive headers like
Authorization,Cookie, andX-API-KEYare masked. - Export formats: you can copy/share JSON, cURL, and HAR-lite from the inspector UI.
Contributing
License
MIT
