{"_id":"@dhanuwrdhn/binar","_rev":"7-bf9ab5cb7a6f06ad770cae0092e950fe","name":"@dhanuwrdhn/binar","dist-tags":{"latest":"0.1.10"},"versions":{"0.1.0":{"name":"@dhanuwrdhn/binar","version":"0.1.0","keywords":["react-native","http","inspector","debug","binar","network","logger"],"license":"MIT","_id":"@dhanuwrdhn/binar@0.1.0","maintainers":[{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"}],"dist":{"shasum":"c98d6bdb9269c09bece75f896552031128982458","tarball":"https://registry.npmjs.org/@dhanuwrdhn/binar/-/binar-0.1.0.tgz","fileCount":18,"integrity":"sha512-rjLobxFbtwGA41raFE5Om01HD+DjVahztVCfLoAiF8saaQ1Kbfmzu2bK0LYdMtD4OfJ3ZWUWr2SA04XPbB18/A==","signatures":[{"sig":"MEQCIEl1FrwWgbQDBXG3YitxKJbEhJN/Yw3XwiEbe+BV8R/eAiBHjPZJvJfbwXYBxhpNS3VgkeP1XfpOwhqEoAEVPNPUgA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54558},"jest":{"roots":["<rootDir>/__tests__"],"preset":"ts-jest","testEnvironment":"node"},"main":"src/index.ts","types":"src/index.ts","gitHead":"c33a9ce1712e9999ced9ab31dbe0cfb1fcf5f772","scripts":{"test":"jest","typecheck":"tsc --noEmit"},"_npmUser":{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"},"_npmVersion":"11.6.2","description":"Binar — in-app HTTP inspector for React Native, inspired by Flutter's Alice. Captures fetch, axios and XMLHttpRequest traffic.","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.74.5"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/binar_0.1.0_1787905862495_0.23266293926382264","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@dhanuwrdhn/binar","version":"0.1.1","keywords":["react-native","http","inspector","debug","binar","network","logger"],"author":{"url":"https://github.com/Dhanuuwrdhn","name":"Dhanu Wardhana"},"license":"MIT","_id":"@dhanuwrdhn/binar@0.1.1","maintainers":[{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"}],"homepage":"https://github.com/Dhanuuwrdhn/binar#readme","bugs":{"url":"https://github.com/Dhanuuwrdhn/binar/issues"},"dist":{"shasum":"efdecfb3e92207519a9758eb7c6abb1180c7210b","tarball":"https://registry.npmjs.org/@dhanuwrdhn/binar/-/binar-0.1.1.tgz","fileCount":18,"integrity":"sha512-ub/H9c9R9wYxxPQaEM/vCYbObq+xwOofxWvFmuUTCPV+AgLf9+TVWTzTzxKt/T/X4e6JN4Nc6HvXGEWlmwdI7A==","signatures":[{"sig":"MEQCICLE5SnOyrUXVH4scVQoJaVDZIarP8RUgEDUJjZMsr+zAiA01JdWe1i4YKr26D4kv3Olvb7cmZZ21PJDH0KN6doyPQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDVTnA+m3YNcs49LoC5EzIB5r0j4nUNgBy/dXvIQFCLdAIhALE90T7vr2S+Ba2JE0gVP+KVuVNPOWQDyWi9zuDMtV5l","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54943},"jest":{"roots":["<rootDir>/__tests__"],"preset":"ts-jest","testEnvironment":"node"},"main":"src/index.ts","types":"src/index.ts","gitHead":"4545b6675c6b4961a3da87fd2c1ee96cac0b2f32","scripts":{"test":"jest","typecheck":"tsc --noEmit"},"_npmUser":{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"},"repository":{"url":"git+https://github.com/Dhanuuwrdhn/binar.git","type":"git"},"_npmVersion":"11.6.2","description":"Binar — in-app HTTP inspector for React Native, inspired by Flutter's Alice. Captures fetch, axios and XMLHttpRequest traffic.","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.74.5"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/binar_0.1.1_1787906512525_0.5316847520501571","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@dhanuwrdhn/binar","version":"0.1.2","keywords":["react-native","http","inspector","debug","binar","network","logger"],"author":{"url":"https://github.com/Dhanuuwrdhn","name":"Dhanu Wardhana"},"license":"MIT","_id":"@dhanuwrdhn/binar@0.1.2","maintainers":[{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"}],"homepage":"https://github.com/Dhanuuwrdhn/binar#readme","bugs":{"url":"https://github.com/Dhanuuwrdhn/binar/issues"},"dist":{"shasum":"b1e5f306086d0e2c42430232047f9ee6c8e73be0","tarball":"https://registry.npmjs.org/@dhanuwrdhn/binar/-/binar-0.1.2.tgz","fileCount":18,"integrity":"sha512-T/saBk/WxZA0RSwAlTZmRXp8+BIUkzj0GcDs1ak3R8dHL+6Gwa9FrySxw076kb/GlBFzfXTonUZC6+Sy0Q6nKA==","signatures":[{"sig":"MEQCIEpSnJlmIYLSbYeXakZvzugPn/BFIF6RmU1k92bj6vsWAiBVZrt2snGHKQh1/+ECGyL8UzafeTeI25c4fKOKUkXgzA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFfQbaSNNdrfhGqClHAumHvUB1hbmweVw/eeDg6yWDkAAiAx49FmuH6s4xo/a1phfM5uBNIvIElMtUcpBZ3nM2zJ8Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54653},"jest":{"roots":["<rootDir>/__tests__"],"preset":"ts-jest","testEnvironment":"node"},"main":"src/index.ts","types":"src/index.ts","gitHead":"b32871a6ddd81ff7d6d1ffeda2d4c11346255eff","scripts":{"test":"jest","typecheck":"tsc --noEmit"},"_npmUser":{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"},"repository":{"url":"git+https://github.com/Dhanuuwrdhn/binar.git","type":"git"},"_npmVersion":"11.6.2","description":"Binar — in-app HTTP inspector for React Native. Captures fetch, axios and XMLHttpRequest traffic.","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.74.5"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/binar_0.1.2_1787906926598_0.06620188452171849","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@dhanuwrdhn/binar","version":"0.1.7","keywords":["react-native","http","inspector","debug","binar","network","logger"],"author":{"url":"https://github.com/Dhanuuwrdhn","name":"Dhanu Wardhana"},"license":"MIT","_id":"@dhanuwrdhn/binar@0.1.7","maintainers":[{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"}],"homepage":"https://github.com/Dhanuuwrdhn/binar#readme","bugs":{"url":"https://github.com/Dhanuuwrdhn/binar/issues"},"dist":{"shasum":"94073218402bdba1b73c87dc396f814fa71932a3","tarball":"https://registry.npmjs.org/@dhanuwrdhn/binar/-/binar-0.1.7.tgz","fileCount":21,"integrity":"sha512-6x8fqi3CKxMbHHcAszTpDFYcFdYuveX1uoswgXpkp338sRxAYfniARChe6E5LREUzQvEZOYqmeVmGOQz5qHu+Q==","signatures":[{"sig":"MEUCIQDWShJ+0146bgwiOWgid225KimOk0dY+aD4vmDw+c2pVwIgCko2XIfOlzg0T1cXe1nnVno87Ubd4h3xUPgWhVYJOik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAYp+QfdYvsFhIDX3CLW7WasMtF70PVfdOQ02uO19WaAAiEA1GfWhXuERJPeN2rnubeQJTXLkeOmhPsc1hktlFUXYkc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dhanuwrdhn%2fbinar@0.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":68354},"jest":{"roots":["<rootDir>/__tests__"],"preset":"ts-jest","testEnvironment":"node"},"main":"src/index.ts","types":"src/index.ts","gitHead":"984198b0ca2a0fe6a241079a4a57441da0ce19e0","scripts":{"test":"jest","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e4e57ee-a542-4c6a-b0c8-e679cefde694"}},"repository":{"url":"git+https://github.com/Dhanuuwrdhn/binar.git","type":"git"},"_npmVersion":"12.0.2","description":"Binar — in-app HTTP inspector for React Native. Captures fetch, axios and XMLHttpRequest traffic.","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.74.5"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/binar_0.1.7_1787913951922_0.33688045319434967","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@dhanuwrdhn/binar","version":"0.1.8","keywords":["react-native","http","inspector","debug","binar","network","logger"],"author":{"url":"https://github.com/Dhanuuwrdhn","name":"Dhanu Wardhana"},"license":"MIT","_id":"@dhanuwrdhn/binar@0.1.8","maintainers":[{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"}],"homepage":"https://github.com/Dhanuuwrdhn/binar#readme","bugs":{"url":"https://github.com/Dhanuuwrdhn/binar/issues"},"dist":{"shasum":"2bfc1c0d7a069c157671a0b0e449177175a70906","tarball":"https://registry.npmjs.org/@dhanuwrdhn/binar/-/binar-0.1.8.tgz","fileCount":22,"integrity":"sha512-f4YwoShlR4rwkJ5VfENVFvrg6/bi31HBnUWw0eqf/kGA3J/nCt9+POnuYVayhvcHT4mAPoaOgzjZg/QzwMg6kA==","signatures":[{"sig":"MEUCIBcLsiEzyEGfXXmkNJoBwYVckOOiQkQOkOy1Bo0wBkoMAiEAuoCiH/E8yQZlRpgGUQ8uJEjI77pB+2axmd2WU7dEI2I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDUsSe6TbVv5p8XJNR/mQpwEwbzSfmuVly/Ba8c1gYBSQIgXzkjREOQb+aaViTyXE0Yr7uGCkq//PdW9bKZB3bZxVk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dhanuwrdhn%2fbinar@0.1.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":72972},"jest":{"roots":["<rootDir>/__tests__"],"preset":"ts-jest","testEnvironment":"node"},"main":"src/index.ts","types":"src/index.ts","gitHead":"e4a2ec195fe3901d318bc5681672d89a174e20cb","scripts":{"test":"jest","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e4e57ee-a542-4c6a-b0c8-e679cefde694"}},"repository":{"url":"git+https://github.com/Dhanuuwrdhn/binar.git","type":"git"},"_npmVersion":"12.0.2","description":"Binar — in-app HTTP inspector for React Native. Captures fetch, axios and XMLHttpRequest traffic.","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.74.5"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/binar_0.1.8_1787915670874_0.4745484508977089","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@dhanuwrdhn/binar","version":"0.1.9","keywords":["react-native","http","inspector","debug","binar","network","logger"],"author":{"url":"https://github.com/Dhanuuwrdhn","name":"Dhanu Wardhana"},"license":"MIT","_id":"@dhanuwrdhn/binar@0.1.9","maintainers":[{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"}],"homepage":"https://github.com/Dhanuuwrdhn/binar#readme","bugs":{"url":"https://github.com/Dhanuuwrdhn/binar/issues"},"dist":{"shasum":"ee245643c3ba9a5b98c83d5156d88089244246a2","tarball":"https://registry.npmjs.org/@dhanuwrdhn/binar/-/binar-0.1.9.tgz","fileCount":22,"integrity":"sha512-WOWOHO/Y8lI9g05pfQcfhGqniWVPVBaJYh8en9ZUopeurU0/hIIW0gtOiADkRsl2gESMJY/u1/1Z1kdwqEw4Uw==","signatures":[{"sig":"MEYCIQD61ebyQpvfM16KVG0o+yXbfZzzsZGvNP9YEhbm9zintwIhAIqDQRqDYjTJZ4UoeFDgq1cRraN8yqCEquwMJW6C2/4H","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHVdqGMk3ljFhUL/KrwYuKyp4Ceov5GTvQzA2iolrVZ1AiAnDf/o+V2jOIgVqeQJHoZHSQIcQG1JHlpRw52ySJsZKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dhanuwrdhn%2fbinar@0.1.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":74493},"jest":{"roots":["<rootDir>/__tests__"],"preset":"ts-jest","testEnvironment":"node"},"main":"src/index.ts","types":"src/index.ts","gitHead":"27852b6477536667da4d92cc657da6c371a69d7e","scripts":{"test":"jest","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e4e57ee-a542-4c6a-b0c8-e679cefde694"}},"repository":{"url":"git+https://github.com/Dhanuuwrdhn/binar.git","type":"git"},"_npmVersion":"12.0.2","description":"Binar — in-app HTTP inspector for React Native. Captures fetch, axios and XMLHttpRequest traffic.","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.74.5"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/binar_0.1.9_1787916038290_0.9163142298917497","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"_id":"@dhanuwrdhn/binar@0.1.10","bugs":{"url":"https://github.com/Dhanuuwrdhn/binar/issues"},"dist":{"shasum":"30edc35b84f0f215bbcef7561eac15620fcde652","tarball":"https://registry.npmjs.org/@dhanuwrdhn/binar/-/binar-0.1.10.tgz","fileCount":22,"integrity":"sha512-NdGj4ujgRj/M15iRuxVPsR2qIWXVnhKVcNy+TXiQ8Rr98mYac11rlgDELNlU0fFjxcDIEo7Iekujyk0E46gY9Q==","signatures":[{"sig":"MEYCIQC3CoHj6OJr01VhhxdNuFvn7wfqfVvZpL0bdxtq7liLkQIhAKvhz5bPpVCson2sJEwat8ecZ7lOoxlKDAp4SQ0cvWHZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC7XV/FI6ASBZBH+pu+mmRReosDxMPYAxG+4iSbIrhEQwIgZWqqNjJ4gst+6PK6mDGfLqiUcaOfcP4I/0vAJz+gv70="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dhanuwrdhn%2fbinar@0.1.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75210},"jest":{"roots":["<rootDir>/__tests__"],"preset":"ts-jest","testEnvironment":"node"},"main":"src/index.ts","name":"@dhanuwrdhn/binar","types":"src/index.ts","author":{"url":"https://github.com/Dhanuuwrdhn","name":"Dhanu Wardhana"},"gitHead":"172c59c16163c5a7c2c9b298f470185cb46e0785","license":"MIT","scripts":{"test":"jest","typecheck":"tsc --noEmit"},"version":"0.1.10","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:8e4e57ee-a542-4c6a-b0c8-e679cefde694"}},"homepage":"https://github.com/Dhanuuwrdhn/binar#readme","keywords":["react-native","http","inspector","debug","binar","network","logger"],"repository":{"url":"git+https://github.com/Dhanuuwrdhn/binar.git","type":"git"},"_npmVersion":"12.0.2","description":"Binar — in-app HTTP inspector for React Native. Captures fetch, axios and XMLHttpRequest traffic.","directories":{},"maintainers":[{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"}],"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","react":"18.2.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/react":"^18.2.0","react-native":"0.74.5"},"peerDependencies":{"react":"*","react-native":"*"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/binar_0.1.10_1787916209620_0.5174097237124635"}}},"time":{"created":"2026-08-28T08:31:02.272Z","modified":"2026-08-28T11:23:30.133Z","0.1.0":"2026-08-28T08:31:02.642Z","0.1.1":"2026-08-28T08:41:52.602Z","0.1.2":"2026-08-28T08:48:46.669Z","0.1.7":"2026-08-28T10:45:52.007Z","0.1.8":"2026-08-28T11:14:30.972Z","0.1.9":"2026-08-28T11:20:38.374Z","0.1.10":"2026-08-28T11:23:29.754Z"},"bugs":{"url":"https://github.com/Dhanuuwrdhn/binar/issues"},"author":{"url":"https://github.com/Dhanuuwrdhn","name":"Dhanu Wardhana"},"license":"MIT","homepage":"https://github.com/Dhanuuwrdhn/binar#readme","keywords":["react-native","http","inspector","debug","binar","network","logger"],"repository":{"url":"git+https://github.com/Dhanuuwrdhn/binar.git","type":"git"},"description":"Binar — in-app HTTP inspector for React Native. Captures fetch, axios and XMLHttpRequest traffic.","maintainers":[{"name":"zhyphora","email":"dhanuwardhan10@gmail.com"}],"readme":"<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/Dhanuuwrdhn/binar/main/assets/binar-banner.svg\" alt=\"Binar — in-app HTTP inspector for React Native\" width=\"100%\">\n</p>\n\n<p align=\"center\">\n  <img alt=\"npm version\" src=\"https://img.shields.io/npm/v/@dhanuwrdhn/binar?style=flat-square&color=FFB627&labelColor=0E1420\">\n  <img alt=\"License MIT\" src=\"https://img.shields.io/badge/license-MIT-E8EDF7?style=flat-square&labelColor=0E1420\">\n  <img alt=\"TypeScript\" src=\"https://img.shields.io/badge/TypeScript-strict-6BA5FF?style=flat-square&labelColor=0E1420\">\n  <img alt=\"React Native\" src=\"https://img.shields.io/badge/React_Native-Expo_%7C_bare-6BA5FF?style=flat-square&labelColor=0E1420\">\n  <img alt=\"Native modules: none\" src=\"https://img.shields.io/badge/native_modules-none-3DD68C?style=flat-square&labelColor=0E1420\">\n  <img alt=\"65 tests\" src=\"https://img.shields.io/badge/tests-65_passing-3DD68C?style=flat-square&labelColor=0E1420\">\n</p>\n\n---\n\nSee every HTTP call your app makes, from inside your app. Binar captures **fetch**, **axios**, and raw **XMLHttpRequest** traffic and shows it on an in-app screen — call list, then tap through to headers, bodies, status, and timing. A floating bubble tells you when requests fire.\n\n## One patch, three clients\n\nIn React Native, `fetch` is a polyfill built on `XMLHttpRequest`, and axios ships an XHR adapter. Binar patches XHR once and wraps `fetch` for full body access, using an internal dedupe marker so a single call is never recorded twice.\n\nAxios needs zero configuration. So does everything else.\n\n## Install\n\n```bash\nnpm install @dhanuwrdhn/binar\n```\n\nMetro transpiles the TypeScript source directly — there is no build step.\n\n> Running Jest in the host app? Add the package to `transformIgnorePatterns`, or Jest will fail to parse the shipped TypeScript.\n\n## Wire it in\n\n**1. Install the interceptors** — as early as possible, before the first request fires.\n\n```tsx\n// index.js\nimport { Binar } from '@dhanuwrdhn/binar';\n\nBinar.init({ showNotification: true });\n```\n\n**2. Wrap your app root.** The inspector renders as a Modal, so no navigator is required.\n\n```tsx\nimport { BinarProvider } from '@dhanuwrdhn/binar';\n\nexport default function App() {\n  return (\n    <BinarProvider>\n      <YourApp />\n    </BinarProvider>\n  );\n}\n```\n\nThat's the whole setup. Fire requests and tap the bubble, or call `Binar.open()` from a debug menu.\n\n## API\n\n```ts\nBinar.init(config?)            // install interceptors (no-op when enabled: false)\nBinar.open() / Binar.close()   // show or hide the inspector\nBinar.setNotification(bool)    // toggle the floating bubble at runtime\nBinar.setScreen(name | null)   // report the active app screen (see below)\nBinar.clear()                  // wipe captured calls\nBinar.uninstall()              // restore the original XHR and fetch\n```\n\n### Config\n\n| Option | Default | What it does |\n|---|---|---|\n| `enabled` | `__DEV__` | When `false`, nothing is patched and every API is a no-op — safe to ship |\n| `showNotification` | `true` | Floating bubble with an unseen-call count; tap to open the inspector |\n| `showScreenLabel` | `true` | Floating pill with the active screen name; only appears once `Binar.setScreen` is wired |\n| `maxCallsCount` | `1000` | Ring buffer size; oldest calls are evicted first |\n| `maxBodySize` | `1_000_000` | Bodies longer than this (in chars) are truncated with a marker |\n| `redactedHeaders` | `authorization`, `cookie`, `set-cookie` | Values render as `***`, matched case-insensitively |\n| `redactedBodyFields` | `password`, `token`, `secret`, `api_key`, `card_number`, `cvv`, and a few more | JSON body fields at any nesting depth render as `***`, matched case-insensitively. Only applies to bodies that parse as JSON |\n| `ignoredUrls` | `[]` | Strings or RegExps to skip; Metro's `/symbolicate` noise is skipped already |\n\n### Screen label (Alice-style)\n\nTell Binar which screen is active and it shows a draggable floating pill with the\nroute name (`/Home`) on top of your app — and stamps every captured call with the\nscreen that fired it (visible in the call list and detail Overview).\n\nWith react-navigation:\n\n```tsx\nimport { createNavigationContainerRef } from '@react-navigation/native';\nimport { Binar } from '@dhanuwrdhn/binar';\n\nconst navRef = createNavigationContainerRef();\nconst reportScreen = () => Binar.setScreen(navRef.getCurrentRoute()?.name ?? null);\n\n<NavigationContainer ref={navRef} onReady={reportScreen} onStateChange={reportScreen}>\n```\n\n`setScreen` is a no-op when Binar is disabled, so the wiring is safe in release builds.\n\n### Mounting as a route\n\n`BinarProvider` needs no navigator. If you'd rather give the inspector its own route:\n\n```tsx\nimport { BinarScreen } from '@dhanuwrdhn/binar';\n\n<Stack.Screen name=\"BinarInspector\" component={BinarScreen} />\n// navigation.navigate('BinarInspector')\n```\n\n## Example app\n\n[`example/`](./example) is a runnable app wiring up fetch, axios, and raw XHR side by side.\n\n## What Binar does not do\n\n- **Native traffic stays invisible.** Requests from native SDKs (Firebase, native networking libraries) never pass through JS, so they are not captured.\n- **It is a dev tool.** `enabled` defaults to `__DEV__`. Leave it that way.\n- **Nothing persists.** Captured calls live in memory and disappear on reload.\n- **The dedupe marker.** Binar adds `x-binar-trace` to fetch requests and strips it at the XHR layer before sending, so it never reaches your server under RN's default fetch. Replace the fetch polyfill with a non-XHR transport and capture still works, but the marker may go out — strip it in your transport or ignore it server-side in dev.\n\n## Development\n\n```bash\nnpm install\nnpm test          # store, redaction, XHR and fetch interceptors\nnpm run typecheck\n```\n\n## License\n\nMIT © [Dhanu Wardhana](https://github.com/Dhanuuwrdhn)\n","readmeFilename":"README.md"}