{"_id":"@chuksdengr/vision-camera-ocr","_rev":"2-d6e618b316076a15d6135c9089a4182b","name":"@chuksdengr/vision-camera-ocr","dist-tags":{"latest":"1.1.2"},"versions":{"1.1.1":{"name":"@chuksdengr/vision-camera-ocr","version":"1.1.1","keywords":["react-native","ios","android","react-native-vision-camera","vision-camera","ocr","text-recognition","text-detection","chuksdengr"],"author":{"url":"https://github.com/ndukachukz","name":"ndukachukz"},"license":"MIT","_id":"@chuksdengr/vision-camera-ocr@1.1.1","maintainers":[{"name":"chuksdengr","email":"ndukachukwuemeka57@gmail.com"}],"homepage":"https://github.com/ndukachukz/vision-camera-ocr#readme","bugs":{"url":"https://github.com/ndukachukz/vision-camera-ocr/issues"},"dist":{"shasum":"bec8dab700fcdc00ea34d1ebee249372725c7a42","tarball":"https://registry.npmjs.org/@chuksdengr/vision-camera-ocr/-/vision-camera-ocr-1.1.1.tgz","fileCount":73,"integrity":"sha512-OX5eIGeF17BaelDOa3T9UtansSV/YtFGqRHlIR4OQ0IJO9KiLDMoI8+UUfcq08saEeCJ+Tk1qYMW600UD3+ORw==","signatures":[{"sig":"MEUCIEdfy5U+Vn4A46uV1j6Yug6ZtTxOvqoYZTlRTCH02C5kAiEA+L8tUcNNDjeNXpEdtOpa6fOdROyjKA/AwCAjIHSncHU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":164616},"jest":{"preset":"react-native","modulePathIgnorePatterns":["<rootDir>/example/node_modules","<rootDir>/lib/"]},"main":"./lib/module/index.js","types":"./lib/typescript/src/index.d.ts","exports":{".":{"types":"./lib/typescript/src/index.d.ts","source":"./src/index.tsx","default":"./lib/module/index.js","react-native":"./src/index.tsx"},"./package.json":"./package.json"},"gitHead":"931a31f2968ad8defb2d9663ffa0f0c17406b565","scripts":{"lint":"biome check .","test":"jest","clean":"del-cli android/build lib","format":"biome format --write .","prepare":"bob build","release":"release-it --only-version","nitrogen":"nitrogen","typecheck":"tsc"},"_npmUser":{"name":"chuksdengr","email":"ndukachukwuemeka57@gmail.com"},"commitlint":{"extends":["@commitlint/config-conventional"]},"release-it":{"git":{"tagName":"v${version}","commitMessage":"chore: release ${version}"},"npm":{"publish":true},"github":{"release":true},"plugins":{"@release-it/conventional-changelog":{"preset":{"name":"angular"}}}},"repository":{"url":"git+https://github.com/ndukachukz/vision-camera-ocr.git","type":"git"},"_npmVersion":"10.9.3","description":"A React Native Vision Camera plugin for real-time OCR (Optical Character Recognition). This package enables seamless integration of on-device OCR by using Google ML Kit on Android and Apple's Vision Framework on iOS. It provides fast, efficient, and cross","directories":{},"_nodeVersion":"22.19.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"packageManager":"bun@1.2.22","devDependencies":{"jest":"^29.7.0","react":"19.0.0","turbo":"^1.10.7","del-cli":"^5.1.0","nitrogen":"^0.35.6","commitlint":"^19.6.1","release-it":"^17.10.0","typescript":"^5.8.3","@types/jest":"^29.5.5","@types/react":"^19.0.0","react-native":"0.81.5","@biomejs/biome":"2.5.1","@evilmartians/lefthook":"^1.5.0","react-native-builder-bob":"^0.40.11","@react-native/babel-preset":"0.81.5","react-native-nitro-modules":"^0.35.6","react-native-vision-camera":"^5.0.0","@react-native-community/cli":"15.0.0-alpha.2","@commitlint/config-conventional":"^19.6.0","@release-it/conventional-changelog":"^9.0.2"},"peerDependencies":{"react":"*","react-native":"*","react-native-nitro-modules":"*","react-native-vision-camera":">= 5"},"_npmOperationalInternal":{"tmp":"tmp/vision-camera-ocr_1.1.1_1782603806058_0.8017179811008199","host":"s3://npm-registry-packages-npm-production"},"react-native-builder-bob":{"output":"lib","source":"src","targets":[["module",{"esm":true}],["typescript",{"project":"tsconfig.build.json"}]]},"create-react-native-library":{"type":"turbo-module","version":"0.50.3","languages":"kotlin-objc"}},"1.1.2":{"name":"@chuksdengr/vision-camera-ocr","version":"1.1.2","description":"A React Native Vision Camera plugin for real-time OCR (Optical Character Recognition). This package enables seamless integration of on-device OCR by using Google ML Kit on Android and Apple's Vision Framework on iOS. It provides fast, efficient, and cross","main":"./lib/module/index.js","types":"./lib/typescript/src/index.d.ts","exports":{".":{"react-native":"./src/index.tsx","source":"./src/index.tsx","types":"./lib/typescript/src/index.d.ts","default":"./lib/module/index.js"},"./package.json":"./package.json"},"scripts":{"test":"jest","typecheck":"tsc","lint":"biome check .","clean":"del-cli android/build lib","nitrogen":"nitrogen","prepare":"bob build","release":"release-it --only-version","format":"biome format --write ."},"keywords":["react-native","ios","android","react-native-vision-camera","vision-camera","ocr","text-recognition","text-detection","chuksdengr"],"repository":{"type":"git","url":"git+https://github.com/ndukachukz/vision-camera-ocr.git"},"author":{"name":"ndukachukz","url":"https://github.com/ndukachukz"},"license":"MIT","bugs":{"url":"https://github.com/ndukachukz/vision-camera-ocr/issues"},"homepage":"https://github.com/ndukachukz/vision-camera-ocr#readme","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"devDependencies":{"@biomejs/biome":"2.5.1","@commitlint/config-conventional":"^19.6.0","@evilmartians/lefthook":"^1.5.0","@react-native-community/cli":"20.2.0","@react-native/babel-preset":"0.86.0","@react-native/jest-preset":"0.86.0","@release-it/conventional-changelog":"^9.0.2","@types/jest":"^29.5.5","@types/react":"^19.1.1","commitlint":"^19.6.1","del-cli":"^5.1.0","jest":"^29.7.0","nitrogen":"^0.36.1","react":"19.2.3","react-native":"0.86.0","react-native-builder-bob":"^0.40.11","react-native-nitro-modules":"^0.36.1","react-native-vision-camera":"^5.1.0","release-it":"^17.10.0","turbo":"^1.10.7","typescript":"^5.8.3"},"peerDependencies":{"react":"*","react-native":">=0.79.0","react-native-nitro-modules":">=0.35.0","react-native-vision-camera":">=5.0.0"},"engines":{"node":">=20"},"packageManager":"bun@1.2.22","jest":{"preset":"@react-native/jest-preset","modulePathIgnorePatterns":["<rootDir>/example/node_modules","<rootDir>/lib/"]},"commitlint":{"extends":["@commitlint/config-conventional"]},"release-it":{"git":{"commitMessage":"chore: release ${version}","tagName":"v${version}"},"npm":{"publish":true},"github":{"release":true},"plugins":{"@release-it/conventional-changelog":{"preset":{"name":"angular"}}}},"react-native-builder-bob":{"source":"src","output":"lib","targets":[["module",{"esm":true}],["typescript",{"project":"tsconfig.build.json"}]]},"create-react-native-library":{"languages":"kotlin-objc","type":"turbo-module","version":"0.50.3"},"gitHead":"eb1b420cf546381ead985d37eebc688af70aca46","_id":"@chuksdengr/vision-camera-ocr@1.1.2","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-kl3Dj3IsuI+jBTt4+1izzz+YmRijGwl5wkcCvCWNffSI7+/jGA/uwO031AfUV8nTE078g8FcXBli4sb1wROLnQ==","shasum":"37e4a20aed076bd549b06c27dea3cbbb005ab478","tarball":"https://registry.npmjs.org/@chuksdengr/vision-camera-ocr/-/vision-camera-ocr-1.1.2.tgz","fileCount":73,"unpackedSize":164748,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICrg2zqQ6fO015Uy1aSQaFkBLJ7BlW2mcC7IMB2rzkm7AiB9msC5WZZoJxGysee6/umxlVOougDwtJhxsTYFo0clgA=="}]},"_npmUser":{"name":"chuksdengr","email":"ndukachukwuemeka57@gmail.com"},"directories":{},"maintainers":[{"name":"chuksdengr","email":"ndukachukwuemeka57@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vision-camera-ocr_1.1.2_1784045149881_0.40308670865316665"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-27T23:43:25.926Z","modified":"2026-07-14T16:05:50.166Z","1.1.1":"2026-06-27T23:43:26.214Z","1.1.2":"2026-07-14T16:05:50.017Z"},"bugs":{"url":"https://github.com/ndukachukz/vision-camera-ocr/issues"},"author":{"name":"ndukachukz","url":"https://github.com/ndukachukz"},"license":"MIT","homepage":"https://github.com/ndukachukz/vision-camera-ocr#readme","keywords":["react-native","ios","android","react-native-vision-camera","vision-camera","ocr","text-recognition","text-detection","chuksdengr"],"repository":{"type":"git","url":"git+https://github.com/ndukachukz/vision-camera-ocr.git"},"description":"A React Native Vision Camera plugin for real-time OCR (Optical Character Recognition). This package enables seamless integration of on-device OCR by using Google ML Kit on Android and Apple's Vision Framework on iOS. It provides fast, efficient, and cross","maintainers":[{"name":"chuksdengr","email":"ndukachukwuemeka57@gmail.com"}],"readme":"# @chuksdengr/vision-camera-ocr\n\n<div align=\"center\">\n\n![React Native](https://img.shields.io/badge/React%20Native-0.79%E2%80%930.86-blue.svg)\n![Platform](https://img.shields.io/badge/platform-Android%20%7C%20iOS-lightgrey.svg)\n![License](https://img.shields.io/badge/license-MIT-green.svg)\n![Version](https://img.shields.io/badge/version-1.1.2-blue.svg)\n\n**A high-performance React Native Vision Camera plugin for real-time OCR (Optical Character Recognition)**\n\n[Features](#-features) • [Installation](#-installation) • [Usage](#-usage) • [API Reference](#-api-reference) • [Examples](#-examples) • [Contributing](#-contributing)\n\n</div>\n\n---\n\n## 🚀 Overview\n\n`@chuksdengr/vision-camera-ocr` is a powerful React Native library that provides real-time text recognition capabilities directly within your camera app. Built on top of `react-native-vision-camera`, it leverages native OCR engines for optimal performance:\n\n- **Android**: Powered by Google ML Kit Text Recognition\n- **iOS**: Powered by Apple's Vision Framework\n\nPerfect for applications requiring real-time text extraction, document scanning, business card readers, or any OCR functionality.\n\n## ✨ Features\n\n- 🔥 **Real-time Processing** - Instant text recognition from camera frames\n- 📱 **Cross-platform** - Native implementation for both Android & iOS\n- 🚀 **High Performance** - Optimized native APIs with minimal overhead\n- 🌐 **Offline First** - No internet connection required, all processing on-device\n- 🎯 **Easy Integration** - Simple API that works seamlessly with Vision Camera\n- 📊 **Configurable** - Support for different recognition models and options\n- 🛡️ **Production Ready** - Built with TypeScript and comprehensive error handling\n\n## 📦 Installation\n\n### Prerequisites\n\n- React Native 0.79+ (tested through 0.86)\n- `react-native-vision-camera` >= 5.0\n- `react-native-nitro-modules` (peer of Vision Camera v5)\n\n### Install the package\n\n```bash\n# Using yarn (recommended)\nyarn add @chuksdengr/vision-camera-ocr\n\n# Using npm\nnpm install @chuksdengr/vision-camera-ocr\n\n# Using pnpm\npnpm add @chuksdengr/vision-camera-ocr\n```\n\n### iOS Setup\n\n```bash\ncd ios && pod install\n```\n\n### Android Setup\n\nNo additional setup required - the package is auto-linked.\n\n## 🎯 Quick Start\n\n### Basic Usage\n\n```typescript\nimport { Camera, useFrameProcessor } from 'react-native-vision-camera';\nimport { performOcr } from '@chuksdengr/vision-camera-ocr';\n\nfunction MyCameraComponent() {\n  const frameProcessor = useFrameProcessor((frame) => {\n    'worklet';\n    const result = performOcr(frame);\n    if (result?.text) {\n      console.log('Detected text:', result.text);\n    }\n  }, []);\n\n  return (\n    <Camera\n      style={StyleSheet.absoluteFill}\n      device={device}\n      isActive={true}\n      frameProcessor={frameProcessor}\n      frameProcessorFps={5}\n    />\n  );\n}\n```\n\n### Advanced Usage with Error Handling\n\n```typescript\nimport { Camera, useFrameProcessor } from 'react-native-vision-camera';\nimport { performOcr } from '@chuksdengr/vision-camera-ocr';\n\nfunction AdvancedCameraComponent() {\n  const [detectedText, setDetectedText] = useState<string>('');\n  const [isProcessing, setIsProcessing] = useState(false);\n\n  const frameProcessor = useFrameProcessor((frame) => {\n    'worklet';\n    try {\n      setIsProcessing(true);\n      const result = performOcr(frame);\n\n      if (result?.text) {\n        setDetectedText(result.text);\n        // You can also send to your app's state management\n        runOnJS(handleTextDetected)(result.text);\n      }\n    } catch (error) {\n      console.error('OCR processing error:', error);\n    } finally {\n      setIsProcessing(false);\n    }\n  }, []);\n\n  const handleTextDetected = (text: string) => {\n    // Handle the detected text in your app\n    console.log('New text detected:', text);\n  };\n\n  return (\n    <View style={styles.container}>\n      <Camera\n        style={StyleSheet.absoluteFill}\n        device={device}\n        isActive={true}\n        frameProcessor={frameProcessor}\n        frameProcessorFps={3} // Lower FPS for better performance\n      />\n\n      {detectedText && (\n        <View style={styles.textOverlay}>\n          <Text style={styles.text}>{detectedText}</Text>\n        </View>\n      )}\n\n      {isProcessing && (\n        <View style={styles.processingIndicator}>\n          <Text>Processing...</Text>\n        </View>\n      )}\n    </View>\n  );\n}\n\nconst styles = StyleSheet.create({\n  container: {\n    flex: 1,\n  },\n  textOverlay: {\n    position: 'absolute',\n    bottom: 100,\n    left: 20,\n    right: 20,\n    backgroundColor: 'rgba(0,0,0,0.7)',\n    padding: 15,\n    borderRadius: 10,\n  },\n  text: {\n    color: 'white',\n    fontSize: 16,\n    textAlign: 'center',\n  },\n  processingIndicator: {\n    position: 'absolute',\n    top: 50,\n    alignSelf: 'center',\n    backgroundColor: 'rgba(0,0,0,0.7)',\n    padding: 10,\n    borderRadius: 20,\n  },\n});\n```\n\n## 📚 API Reference\n\n### `performOcr(frame: Frame, options?: OcrOptions): OcrResult | null`\n\nPerforms OCR on a camera frame and returns recognized text with optional structure. Returns `null` when no text is detected.\n\n#### Parameters\n\n- `frame` (Frame): The camera frame to process from `react-native-vision-camera`\n- `options` (optional):\n  - `includeBoxes?: boolean` — include normalized bounding boxes for blocks/lines/words\n  - `includeConfidence?: boolean` — include confidence scores when available (iOS lines)\n  - `recognitionLevel?: 'fast' | 'accurate'` (iOS) — control Vision request speed/accuracy\n  - `recognitionLanguages?: string[]` (iOS) — language hints, e.g. `[\"en-US\", \"vi-VN\"]`\n  - `usesLanguageCorrection?: boolean` (iOS) — enable language correction\n\n#### Returns\n\n- `OcrResult | null`:\n  - `text: string` — concatenated recognized text\n  - `blocks?: OcrBlock[]` — present when `includeBoxes` is true\n    - `OcrBlock`: `{ text: string, box?: OcrBox, lines?: OcrLine[] }`\n    - `OcrLine`: `{ text: string, box?: OcrBox, words?: OcrWord[], confidence?: number }`\n    - `OcrWord`: `{ text: string, box?: OcrBox, confidence?: number }`\n    - `OcrBox`: `{ x: number, y: number, width: number, height: number }` (normalized 0..1 on iOS; absolute px on Android for now)\n\n#### Example\n\n```typescript\nconst result = performOcr(frame, {\n  includeBoxes: true,\n  includeConfidence: true,\n  recognitionLevel: 'accurate', // iOS\n  recognitionLanguages: ['en-US', 'vi-VN'], // iOS\n  usesLanguageCorrection: true, // iOS\n});\nif (result) {\n  console.log('Detected text:', result.text);\n  const firstLine = result.blocks?.[0]?.lines?.[0];\n  if (firstLine?.box) {\n    // Use normalized box on iOS (0..1). Android currently returns pixel units.\n    console.log('First line box:', firstLine.box);\n  }\n} else {\n  console.log('No text detected');\n}\n```\n\n## 🔧 Configuration\n\n### Frame Processor Options\n\nRuntime `performOcr` options are recommended (see above). Initialization options are currently limited and not required.\n\n> Note: Android uses ML Kit Latin text recognizer by default. iOS options map to Apple's Vision.\n\n## 📱 Platform-Specific Details\n\n### Android\n\n- Uses Google ML Kit Text Recognition\n- Optimized for Latin script languages\n- Automatic language detection\n- Fast processing with minimal memory usage\n- Bounding boxes returned in pixel units (subject to change to normalized in future)\n\n### iOS\n\n- Uses Apple's Vision Framework\n- Native integration with iOS camera system\n- Support for multiple text recognition languages\n- Optimized for iOS performance characteristics\n- Supports `recognitionLevel`, `recognitionLanguages`, `usesLanguageCorrection`\n- Bounding boxes returned normalized (0..1); y-origin is top-left in returned box structure\n\n## 🎨 Use Cases\n\nThis library is perfect for:\n\n- **Document Scanners** - Convert paper documents to digital text\n- **Business Card Readers** - Extract contact information from business cards\n- **Receipt Scanners** - Automate expense tracking and receipt processing\n- **Text Translation Apps** - Real-time text recognition for translation\n- **Accessibility Tools** - Help visually impaired users read text\n- **Form Processing** - Automate data entry from paper forms\n- **License Plate Recognition** - Vehicle identification systems\n- **Product Label Scanners** - Extract information from product packaging\n\n## 🚀 Performance Tips\n\n- **Frame Rate**: Use `frameProcessorFps={3-5}` for optimal performance\n- **Error Handling**: Always wrap OCR calls in try-catch blocks\n- **State Management**: Debounce text updates to avoid excessive re-renders\n- **Memory**: Process frames efficiently and avoid storing large amounts of data\n\n## 🔧 Troubleshooting\n\n### Android Issues\n\n#### Plugin Not Found / \"Failed to load Frame Processor Plugin\"\n\n**Problem:** The frame processor plugin isn't being registered properly.\n\n**Solutions:**\n\n1. **Clean and rebuild:**\n\n   ```bash\n   cd android\n   ./gradlew clean\n   cd ..\n   # Then rebuild your app\n   ```\n\n2. **Verify auto-linking:**\n\n   - Check that `react-native.config.js` exists in your project root\n   - Ensure the package is listed in `package.json` dependencies\n   - Run `npx react-native config` to verify the package is detected\n\n3. **Manual linking (if auto-linking fails):**\n\n   - Add to `android/settings.gradle`:\n     ```gradle\n     include ':vision-camera-ocr'\n     project(':vision-camera-ocr').projectDir = new File(rootProject.projectDir, '../node_modules/@chuksdengr/vision-camera-ocr/android')\n     ```\n   - Add to `android/app/build.gradle` dependencies:\n     ```gradle\n     implementation project(':vision-camera-ocr')\n     ```\n\n4. **Check React Native version:**\n\n   - Ensure you're using React Native 0.79+ (check `package.json`)\n   - Verify `react-native-vision-camera` >= 5.0 is installed\n   - Verify `react-native-nitro-modules` is installed\n\n5. **Verify ML Kit dependency:**\n   - The library uses Google ML Kit Text Recognition\n   - Ensure your `android/build.gradle` has Google Maven repository:\n     ```gradle\n     repositories {\n       google()\n       mavenCentral()\n     }\n     ```\n\n#### Camera Permission Issues\n\n**Problem:** Camera permission is denied or not requested.\n\n**Solutions:**\n\n1. Add to `AndroidManifest.xml`:\n\n   ```xml\n   <uses-permission android:name=\"android.permission.CAMERA\" />\n   <uses-feature android:name=\"android.hardware.camera\" android:required=\"true\" />\n   ```\n\n2. Request permission at runtime:\n\n   ```typescript\n   import { PermissionsAndroid } from 'react-native';\n\n   const granted = await PermissionsAndroid.request(\n     PermissionsAndroid.PERMISSIONS.CAMERA\n   );\n   ```\n\n#### Build Errors\n\n**Problem:** Gradle build fails with dependency or compilation errors.\n\n**Solutions:**\n\n1. **Update Gradle:**\n\n   - Ensure Android Gradle Plugin 8.12.0+ is used\n   - Check `android/build.gradle` for correct versions\n\n2. **Clean build:**\n\n   ```bash\n   cd android\n   ./gradlew clean\n   rm -rf .gradle\n   cd ..\n   ```\n\n3. **Check minSdkVersion:**\n   - Library requires minSdkVersion 24\n   - Verify in `android/build.gradle`:\n     ```gradle\n     minSdkVersion 24\n     ```\n\n### iOS Issues\n\n#### Pod Install Fails\n\n**Solutions:**\n\n1. Update CocoaPods: `sudo gem install cocoapods`\n2. Clean pods: `cd ios && pod deintegrate && pod install`\n3. Clear cache: `rm -rf ~/Library/Caches/CocoaPods`\n\n#### Camera Permission\n\n**Solutions:**\n\n1. Add to `Info.plist`:\n   ```xml\n   <key>NSCameraUsageDescription</key>\n   <string>This app needs access to your camera to perform OCR</string>\n   ```\n\n### General Issues\n\n#### No Text Detected\n\n**Solutions:**\n\n1. Ensure good lighting conditions\n2. Hold camera steady and focus on text\n3. Try adjusting `frameProcessorFps` (lower values may help)\n4. Check that text is clear and not too small\n5. Verify the frame processor is being called (add console logs)\n\n#### Performance Issues\n\n**Solutions:**\n\n1. Reduce `frameProcessorFps` to 2-3\n2. Add throttling/debouncing to text updates\n3. Process frames conditionally (e.g., only when camera is focused)\n4. Avoid heavy operations in the frame processor worklet\n\n## 📱 Example App\n\nA complete working example app is available in the [`example`](./example) directory. See the [example README](./example/README.md) for setup instructions.\n\n## 🤝 Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.\n\n### Development Setup\n\n```bash\n# Clone the repository\ngit clone https://github.com/ndukachukz/vision-camera-ocr.git\ncd vision-camera-ocr\n\n# Install dependencies\nyarn install\n\n# Run tests\nyarn test\n\n# Type checking\nyarn typecheck\n\n# Linting\nyarn lint\n```\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🙏 Acknowledgments\n\n- Built on top of [react-native-vision-camera](https://github.com/mrousavy/react-native-vision-camera)\n- Android OCR powered by [Google ML Kit](https://developers.google.com/ml-kit/vision/text-recognition)\n- iOS OCR powered by [Apple Vision Framework](https://developer.apple.com/documentation/vision)\n\n## 💖 Support This Project\n\nIf you find this library useful and would like to support ongoing development, please consider:\n\n- ⭐ **Starring** this repository\n- 🐛 **Reporting bugs** and feature requests\n- 💻 **Contributing** code improvements\n- 💰 **Sponsoring** us on GitHub\n\n👉 [**Become a Sponsor**](https://github.com/sponsors/ndukachukz)\n\n---\n\n<div align=\"center\">\n\n**Made with ❤️ by [ndukachukz](https://github.com/ndukachukz)**\n\n[GitHub](https://github.com/ndukachukz) • [Issues](https://github.com/ndukachukz/vision-camera-ocr/issues) • [Discussions](https://github.com/ndukachukz/vision-camera-ocr/discussions)\n\n</div>\n","readmeFilename":"README.md"}