{"_id":"@bandaru.sudheer.npm/expo-root-deductor","_rev":"6-01763824ccae269642fe6c3083a313b2","name":"@bandaru.sudheer.npm/expo-root-deductor","dist-tags":{"latest":"0.2.1"},"versions":{"0.1.0":{"name":"@bandaru.sudheer.npm/expo-root-deductor","version":"0.1.0","keywords":["react-native","expo","expo-root-deductor","ExpoRootDeductor"],"author":{"url":"https://github.com/sudheer-9999","name":"sudheer-9999","email":"bandarusudheer75@gmail.com"},"license":"MIT","_id":"@bandaru.sudheer.npm/expo-root-deductor@0.1.0","maintainers":[{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"}],"homepage":"https://github.com/sudheer-9999/expo-root-deductor#readme","bugs":{"url":"https://github.com/sudheer-9999/expo-root-deductor/issues"},"dist":{"shasum":"87ff12575d34d1436398484722bd07a1a5e5549e","tarball":"https://registry.npmjs.org/@bandaru.sudheer.npm/expo-root-deductor/-/expo-root-deductor-0.1.0.tgz","fileCount":50,"integrity":"sha512-AuHutWj3rGV4tYsHlXcgJfKhVyPuQRN+2rzPJtyMckrzxQNFJV/6NsSWOiyapud8NvQ1EukBXIT5EWsbJopQqQ==","signatures":[{"sig":"MEQCIB7bproG7TXK59vhG4eplxCqPu6i6ysAzrUtJeAB39brAiBFe+ctJ4doyr4agtw2bt5h9r80Jp5Nt/yo2w3LjCKGaQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43635},"main":"build/index.js","types":"build/index.d.ts","gitHead":"2683c061a327b078f4c13e9e05207db86dc313f7","scripts":{"lint":"expo-module lint","test":"expo-module test","build":"expo-module build","clean":"expo-module clean","prepare":"expo-module prepare","open:ios":"xed example/ios","expo-module":"expo-module","open:android":"open -a \"Android Studio\" example/android","prepublishOnly":"expo-module prepublishOnly"},"_npmUser":{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"},"repository":{"url":"git+https://github.com/sudheer-9999/expo-root-deductor.git","type":"git"},"_npmVersion":"10.8.2","description":"My new module","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"expo":"^54.0.27","@types/react":"~19.1.0","react-native":"0.81.5","expo-module-scripts":"^5.0.8"},"peerDependencies":{"expo":"*","react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/expo-root-deductor_0.1.0_1770883012868_0.6050375400337595","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@bandaru.sudheer.npm/expo-root-deductor","version":"0.1.1","keywords":["react-native","expo","expo-root-deductor","ExpoRootDeductor"],"author":{"url":"https://github.com/sudheer-9999","name":"sudheer-9999","email":"bandarusudheer75@gmail.com"},"license":"MIT","_id":"@bandaru.sudheer.npm/expo-root-deductor@0.1.1","maintainers":[{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"}],"homepage":"https://github.com/sudheer-9999/expo-root-deductor#readme","bugs":{"url":"https://github.com/sudheer-9999/expo-root-deductor/issues"},"dist":{"shasum":"d92f71f43b5f8e58123d13a6ee84b7368e31dfd3","tarball":"https://registry.npmjs.org/@bandaru.sudheer.npm/expo-root-deductor/-/expo-root-deductor-0.1.1.tgz","fileCount":50,"integrity":"sha512-eINbIHC+oTLaS2QF6tmmbxFsrfPaT5EzqrVy4RC2pHbN5ggBQeKhF8IarazvjHTOue6LWMCgZ3lpUECyB+eSQA==","signatures":[{"sig":"MEUCIEPVv+kKGmVN0WI1I18bbvSs9PJBlr38BlHM2/FcJoMvAiEAlSs/0nxNSNEt5+xKKYZlaIEvyhXhduQi760FbyrNPJs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43656},"main":"build/index.js","types":"build/index.d.ts","gitHead":"b7adc52c705d78b073da2b05678a80c48512ad26","scripts":{"lint":"expo-module lint","test":"expo-module test","build":"expo-module build","clean":"expo-module clean","prepare":"expo-module prepare","open:ios":"xed example/ios","expo-module":"expo-module","open:android":"open -a \"Android Studio\" example/android","prepublishOnly":"expo-module prepublishOnly"},"_npmUser":{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"},"repository":{"url":"git+https://github.com/sudheer-9999/expo-root-deductor.git","type":"git"},"_npmVersion":"10.8.2","description":"My new module","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"expo":"^54.0.27","@types/react":"~19.1.0","react-native":"0.81.5","expo-module-scripts":"^5.0.8"},"peerDependencies":{"expo":"*","react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/expo-root-deductor_0.1.1_1770883323936_0.8746446935828947","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@bandaru.sudheer.npm/expo-root-deductor","version":"0.1.2","keywords":["react-native","expo","expo-root-deductor","ExpoRootDeductor"],"author":{"url":"https://github.com/sudheer-9999","name":"sudheer-9999","email":"bandarusudheer75@gmail.com"},"license":"MIT","_id":"@bandaru.sudheer.npm/expo-root-deductor@0.1.2","maintainers":[{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"}],"homepage":"https://github.com/sudheer-9999/expo-root-deductor#readme","bugs":{"url":"https://github.com/sudheer-9999/expo-root-deductor/issues"},"dist":{"shasum":"51b66935e805f7b876ea6344e2e4c0fc510af45a","tarball":"https://registry.npmjs.org/@bandaru.sudheer.npm/expo-root-deductor/-/expo-root-deductor-0.1.2.tgz","fileCount":50,"integrity":"sha512-zb/GhHpTnDToW3ooutLCHxIv1dT0s2HNPPkHJfP73EsnGTPLs6lXnYoYZW8mzf24yesGw57RdDOHwjkSz7K+WQ==","signatures":[{"sig":"MEQCIAPl9xuvwUQ1U+NdIZDtSbuh8CQDJwnKSgp6ujvQu22WAiAlRNlNV3XxQXYECPPzYxGBaKb+/b3228HzZFDp5t31lQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43808},"main":"build/index.js","types":"build/index.d.ts","gitHead":"01aabfa398e99cb1c36ac9b3aab43182927c9a4a","scripts":{"lint":"expo-module lint","test":"expo-module test","build":"expo-module build","clean":"expo-module clean","prepare":"expo-module prepare","open:ios":"xed example/ios","expo-module":"expo-module","open:android":"open -a \"Android Studio\" example/android","prepublishOnly":"expo-module prepublishOnly"},"_npmUser":{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"},"repository":{"url":"git+https://github.com/sudheer-9999/expo-root-deductor.git","type":"git"},"_npmVersion":"10.8.2","description":"My new module","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"expo":"^54.0.27","@types/react":"~19.1.0","react-native":"0.81.5","expo-module-scripts":"^5.0.8"},"peerDependencies":{"expo":"*","react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/expo-root-deductor_0.1.2_1771486456979_0.48138064693901095","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@bandaru.sudheer.npm/expo-root-deductor","version":"0.1.3","keywords":["react-native","expo","expo-root-deductor","ExpoRootDeductor"],"author":{"url":"https://github.com/sudheer-9999","name":"sudheer-9999","email":"bandarusudheer75@gmail.com"},"license":"MIT","_id":"@bandaru.sudheer.npm/expo-root-deductor@0.1.3","maintainers":[{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"}],"homepage":"https://github.com/sudheer-9999/expo-root-deductor#readme","bugs":{"url":"https://github.com/sudheer-9999/expo-root-deductor/issues"},"dist":{"shasum":"ed924e64f8ac13b2b2ee3f69fac1621e706e682d","tarball":"https://registry.npmjs.org/@bandaru.sudheer.npm/expo-root-deductor/-/expo-root-deductor-0.1.3.tgz","fileCount":50,"integrity":"sha512-TK2K6/81+BLDgSzM9X4te5XsBBhNZuHU2SI2wiAdKcAPIvrs098v33xqUXeGvg/mqb9BmCgHUClibdTPOptFpA==","signatures":[{"sig":"MEUCIQCn9/LrvxqeMWFMaB10VlVXcICGf6yLSsjeYLYhCQvR3gIgGmRhnh68a/S7UBiGN0PY41tdTT9Cu3JRzvXKtXzOy00=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":43838},"main":"build/index.js","types":"build/index.d.ts","gitHead":"01aabfa398e99cb1c36ac9b3aab43182927c9a4a","scripts":{"lint":"expo-module lint","test":"expo-module test","build":"expo-module build","clean":"expo-module clean","prepare":"expo-module prepare","open:ios":"xed example/ios","expo-module":"expo-module","open:android":"open -a \"Android Studio\" example/android","prepublishOnly":"expo-module prepublishOnly"},"_npmUser":{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"},"repository":{"url":"git+https://github.com/sudheer-9999/expo-root-deductor.git","type":"git"},"_npmVersion":"10.8.2","description":"My new module","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"expo":"^54.0.27","@types/react":"~19.1.0","react-native":"0.81.5","expo-module-scripts":"^5.0.8"},"peerDependencies":{"expo":"*","react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/expo-root-deductor_0.1.3_1771489008105_0.9737415893454007","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@bandaru.sudheer.npm/expo-root-deductor","version":"0.2.0","keywords":["react-native","expo","expo-root-deductor","ExpoRootDeductor"],"author":{"url":"https://github.com/sudheer-9999","name":"sudheer-9999","email":"bandarusudheer75@gmail.com"},"license":"MIT","_id":"@bandaru.sudheer.npm/expo-root-deductor@0.2.0","maintainers":[{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"}],"homepage":"https://github.com/sudheer-9999/expo-root-deductor#readme","bugs":{"url":"https://github.com/sudheer-9999/expo-root-deductor/issues"},"dist":{"shasum":"78fe89b131e2f681a47e1eba56104dfbc9777d32","tarball":"https://registry.npmjs.org/@bandaru.sudheer.npm/expo-root-deductor/-/expo-root-deductor-0.2.0.tgz","fileCount":47,"integrity":"sha512-yKwiqKvxBx8Idqkia9oFFMUtoMh2Q+Llcm6zZyrzQmihzKRbyOGJcFB5T7VoKU7Ijru82n34eWmrtPZC/OqIFA==","signatures":[{"sig":"MEQCIANBho6gMIQrTEGGCH/+TEkc6o7I3DXY0vtYJmRuqwziAiABVNX9+e0ItXggsgzDr1E/K/U/bXkCEuM2rmHlPNpkHA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34959},"main":"build/index.js","types":"build/index.d.ts","gitHead":"407a714d71c34349ca208d706e4dc553796aa876","scripts":{"lint":"expo-module lint","test":"expo-module test","build":"expo-module build","clean":"expo-module clean","prepare":"expo-module prepare","expo-module":"expo-module","open:android":"open -a \"Android Studio\" example/android","prepublishOnly":"expo-module prepublishOnly"},"_npmUser":{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"},"repository":{"url":"git+https://github.com/sudheer-9999/expo-root-deductor.git","type":"git"},"_npmVersion":"10.8.2","description":"My new module","directories":{},"_nodeVersion":"20.19.4","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"expo":"^54.0.27","@types/react":"~19.1.0","react-native":"0.81.5","expo-module-scripts":"^5.0.8"},"peerDependencies":{"expo":"*","react":"*","react-native":"*"},"_npmOperationalInternal":{"tmp":"tmp/expo-root-deductor_0.2.0_1771492590095_0.8557186604463987","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@bandaru.sudheer.npm/expo-root-deductor","version":"0.2.1","description":"Expo module for device security checks (root/jailbreak, emulator, developer mode detection)","main":"build/index.js","types":"build/index.d.ts","scripts":{"build":"expo-module build","clean":"expo-module clean","lint":"expo-module lint","test":"expo-module test","prepare":"expo-module prepare","prepublishOnly":"expo-module prepublishOnly","expo-module":"expo-module","open:android":"open -a \"Android Studio\" example/android"},"keywords":["react-native","expo","expo-root-deductor","ExpoRootDeductor"],"repository":{"type":"git","url":"git+https://github.com/sudheer-9999/expo-root-deductor.git"},"bugs":{"url":"https://github.com/sudheer-9999/expo-root-deductor/issues"},"author":{"name":"sudheer-9999","email":"bandarusudheer75@gmail.com","url":"https://github.com/sudheer-9999"},"license":"MIT","homepage":"https://github.com/sudheer-9999/expo-root-deductor#readme","dependencies":{},"devDependencies":{"@types/react":"~19.1.0","expo-module-scripts":"^5.0.8","expo":"^54.0.27","react-native":"0.81.5"},"peerDependencies":{"expo":"*","react":"*","react-native":"*"},"_id":"@bandaru.sudheer.npm/expo-root-deductor@0.2.1","gitHead":"7b1a4c9784ad2e0fdd76db7a4a25b047931ef291","_nodeVersion":"20.19.4","_npmVersion":"10.8.2","dist":{"integrity":"sha512-hjeD2HlixKyi5GjWPXdHOFEtBgDINOg95F4MrzyqPaVGEK/JOkcQOyQWj5uivFJSGfciQcXUJURPgwEt2Kq7ow==","shasum":"1d291c1c01504425d973ed586b64ccaae7d4fc8c","tarball":"https://registry.npmjs.org/@bandaru.sudheer.npm/expo-root-deductor/-/expo-root-deductor-0.2.1.tgz","fileCount":36,"unpackedSize":26386,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIH2Wjr/6nVnziovV/GlMl1CvYIPuYSMfmHIFMJEoO1PhAiEA1WunUBXH7bwVgIxf8RcIoZGyEbGrLhZzblKVlHaGXjw="}]},"_npmUser":{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"},"directories":{},"maintainers":[{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/expo-root-deductor_0.2.1_1772181216432_0.8280730899228688"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-12T07:56:52.725Z","modified":"2026-02-27T08:33:36.696Z","0.1.0":"2026-02-12T07:56:53.017Z","0.1.1":"2026-02-12T08:02:04.085Z","0.1.2":"2026-02-19T07:34:17.145Z","0.1.3":"2026-02-19T08:16:48.261Z","0.2.0":"2026-02-19T09:16:30.262Z","0.2.1":"2026-02-27T08:33:36.586Z"},"bugs":{"url":"https://github.com/sudheer-9999/expo-root-deductor/issues"},"author":{"name":"sudheer-9999","email":"bandarusudheer75@gmail.com","url":"https://github.com/sudheer-9999"},"license":"MIT","homepage":"https://github.com/sudheer-9999/expo-root-deductor#readme","keywords":["react-native","expo","expo-root-deductor","ExpoRootDeductor"],"repository":{"type":"git","url":"git+https://github.com/sudheer-9999/expo-root-deductor.git"},"description":"Expo module for device security checks (root/jailbreak, emulator, developer mode detection)","maintainers":[{"name":"bandaru.sudheer.npm","email":"bandarusudheer75@gmail.com"}],"readme":"# expo-root-deductor\n\nA comprehensive Expo module for detecting device security compromises including root detection, developer mode checks, and emulator detection on Android platform.\n\n## Features\n\n- 🔒 **Root Detection**: Detects if the device is rooted (Android)\n- 🛠️ **Developer Mode Detection**: Checks if developer mode is enabled\n- ⚙️ **Developer Options Detection**: Detects if developer options are enabled\n- 📱 **Emulator Detection**: Identifies if the app is running on an emulator or simulator\n- 🌐 **Web Support**: Includes web platform support with appropriate fallbacks\n- 📊 **Detailed Results**: Returns comprehensive security check results with failed check indicators\n\n## Installation\n\n### Managed Expo projects\n\nFor [managed](https://docs.expo.dev/archive/managed-vs-bare/) Expo projects, please follow the installation instructions in the [API documentation for the latest stable release](#api-documentation). If you follow the link and there is no documentation available then this library is not yet usable within managed projects &mdash; it is likely to be included in an upcoming Expo SDK release.\n\n### Bare React Native projects\n\nFor bare React Native projects, you must ensure that you have [installed and configured the `expo` package](https://docs.expo.dev/bare/installing-expo-modules/) before continuing.\n\n#### Add the package to your npm dependencies\n\n```bash\nnpm install @bandaru.sudheer.npm/expo-root-deductor\n```\n\n#### Configure for Android\n\nNo additional configuration needed. The module will automatically detect root status and developer options.\n\n## Usage\n\n### Basic Example\n\n```typescript\nimport ExpoRootDeductor from 'expo-root-deductor';\n\n// Check device security\nconst checkSecurity = async () => {\n  try {\n    const result = await ExpoRootDeductor.checkDeviceSecurity();\n    \n    console.log('Is Compromised:', result.isCompromised);\n    console.log('Failed Checks:', result.failedChecks);\n    console.log('Details:', result.details);\n    \n    if (result.isCompromised) {\n      // Handle compromised device\n      console.warn('Device security compromised!');\n    }\n  } catch (error) {\n    console.error('Security check failed:', error);\n  }\n};\n```\n\n### Complete Example with React Hook\n\n```typescript\nimport { useEvent } from 'expo';\nimport ExpoRootDeductor from 'expo-root-deductor';\nimport { useState } from 'react';\n\nexport default function SecurityCheck() {\n  const [securityResult, setSecurityResult] = useState(null);\n\n  const checkSecurity = async () => {\n    try {\n      const result = await ExpoRootDeductor.checkDeviceSecurity();\n      setSecurityResult(result);\n    } catch (error) {\n      console.error('Security check failed:', error);\n    }\n  };\n\n  return (\n    <View>\n      <Button title=\"Check Device Security\" onPress={checkSecurity} />\n      \n      {securityResult && (\n        <View>\n          <Text>\n            Is Compromised: {securityResult.isCompromised ? 'YES' : 'NO'}\n          </Text>\n          \n          {securityResult.failedChecks?.length > 0 && (\n            <View>\n              <Text>Failed Checks:</Text>\n              {securityResult.failedChecks.map((check, index) => (\n                <Text key={index}>• {check}</Text>\n              ))}\n            </View>\n          )}\n          \n          <Text>\n            Rooted: {securityResult.details?.isRooted ? 'Yes' : 'No'}\n          </Text>\n          <Text>\n            Developer Mode: {securityResult.details?.isDeveloperMode ? 'Yes' : 'No'}\n          </Text>\n          <Text>\n            Developer Options: {securityResult.details?.isDeveloperOptionsEnabled ? 'Yes' : 'No'}\n          </Text>\n          <Text>\n            Emulator: {securityResult.details?.isEmulator ? 'Yes' : 'No'}\n          </Text>\n        </View>\n      )}\n    </View>\n  );\n}\n```\n\n## API Reference\n\n### Methods\n\n#### `checkDeviceSecurity(): Promise<DetectionResult>`\n\nPerforms comprehensive security checks on the device and returns detailed results.\n\n**Returns:** `Promise<DetectionResult>`\n\n**DetectionResult:**\n```typescript\ntype DetectionResult = {\n  isCompromised: boolean;           // True if any security check failed\n  failedChecks: string[];            // Array of failed check names\n  details: {\n    isRooted: boolean;               // True if device is rooted\n    isDeveloperMode: boolean;        // True if developer mode is enabled\n    isDeveloperOptionsEnabled: boolean; // True if developer options are enabled\n    isEmulator: boolean;              // True if running on emulator/simulator\n  };\n};\n```\n\n**Example:**\n```typescript\nconst result = await ExpoRootDeductor.checkDeviceSecurity();\n// {\n//   isCompromised: true,\n//   failedChecks: ['isRooted', 'isDeveloperOptionsEnabled'],\n//   details: {\n//     isRooted: true,\n//     isDeveloperMode: false,\n//     isDeveloperOptionsEnabled: true,\n//     isEmulator: false\n//   }\n// }\n```\n\n#### `hello(): string`\n\nReturns a greeting message. Useful for testing module integration.\n\n**Returns:** `string`\n\n**Example:**\n```typescript\nconst greeting = ExpoRootDeductor.hello();\n// \"Hello world! 👋\"\n```\n\n#### `setValueAsync(value: string): Promise<void>`\n\nSets a value and triggers an onChange event.\n\n**Parameters:**\n- `value: string` - The value to set\n\n**Example:**\n```typescript\nawait ExpoRootDeductor.setValueAsync('Hello from JS!');\n```\n\n### Constants\n\n#### `PI: number`\n\nThe mathematical constant π (pi).\n\n**Example:**\n```typescript\nconst pi = ExpoRootDeductor.PI;\n// 3.141592653589793\n```\n\n### Events\n\n#### `onChange`\n\nEvent fired when a value changes via `setValueAsync`.\n\n**Event Payload:**\n```typescript\ntype ChangeEventPayload = {\n  value: string;\n};\n```\n\n**Example:**\n```typescript\nimport { useEvent } from 'expo';\n\nconst onChangePayload = useEvent(ExpoRootDeductor, 'onChange');\nconsole.log(onChangePayload?.value);\n```\n\n### Views\n\n#### `ExpoRootDeductorView`\n\nA view component that displays a web view.\n\n**Props:**\n```typescript\ntype ExpoRootDeductorViewProps = {\n  url: string;                      // URL to load in the web view\n  onLoad?: (event: { nativeEvent: { url: string } }) => void; // Callback when URL loads\n  style?: StyleProp<ViewStyle>;      // Optional style prop\n};\n```\n\n**Example:**\n```typescript\nimport { ExpoRootDeductorView } from 'expo-root-deductor';\n\n<ExpoRootDeductorView\n  url=\"https://www.example.com\"\n  onLoad={({ nativeEvent: { url } }) => console.log(`Loaded: ${url}`)}\n  style={{ height: 200 }}\n/>\n```\n\n## Platform Support\n\n- ✅ Android\n- ✅ Web (with appropriate fallbacks)\n\n## Security Considerations\n\n⚠️ **Important**: This module provides security detection capabilities, but it should not be the sole security measure for your application. Determined attackers may find ways to bypass these checks. Always implement multiple layers of security.\n\n### Limitations\n\n- Root detection can be bypassed by sophisticated root cloaking tools\n- Some checks may have false positives or false negatives\n- Web platform has limited detection capabilities\n\n## Contributing\n\nContributions are very welcome! Please refer to guidelines described in the [contributing guide](https://github.com/expo/expo#contributing).\n\n## License\n\nMIT\n\n## Author\n\nsudheer-9999 - [GitHub](https://github.com/sudheer-9999)\n\n## Repository\n\n[GitHub Repository](https://github.com/sudheer-9999/expo-root-deductor)\n\n## Issues\n\n[Report Issues](https://github.com/sudheer-9999/expo-root-deductor/issues)\n","readmeFilename":"README.md"}