BelZSpeedScan — A Cross-Platform QR & Barcode Scanner for Kotlin Multiplatform (Android & iOS)

BelZSpeedScan is a lightweight and easy-to-use library for scanning QR codes and barcodes. It supports both Kotlin Multiplatform (KMP) and native Android development, providing a consistent API across platforms. This allows you to use the same scanning logic in your shared KMP code and seamlessly integrate it into your Android application.
📂 Project Files
📱 Demonstrations
Installation:
Using BelZSpeedScan in Kotlin Multiplatform / Compose Multiplatform
Step 1: Add the dependency
In your commonMain build.gradle.kts:
implementation("io.github.ismoy:belzspeedscan:1.0.12")
Don’t forget to configure iOS-specific permissions in your Info.plist file:
<key>NSCameraUsageDescription</key>
<string>We need access to the camera to scan QR.</string>
Step 2: Launch the Scanner
var showScanner by remember { mutableStateOf(false) }
if (showScanner) {
BelZSpeedScanner(
onCodeScanned = { code ->}//result scan
)
}
Button(onClick = { showScanner = true }) {
Text("Scan")
}
Using BelZSpeedScan in Android Native (Jetpack Compose)
Step 1: Add the dependency
implementation("io.github.ismoy:belzspeedscan:1.0.12")
Step 2: Launch the Scanner
var showScanner by remember { mutableStateOf(false) }
if (showScanner) {
BelZSpeedScanner(
onCodeScanned = { code ->}//result scan
)
}
Button(onClick = { showScanner = true }) {
Text("Scan")
}
Analytics Integration
BelZSpeedScan includes an optional analytics system designed with privacy in mind:
- Privacy-focused: No personal data is collected
- Configurable: Granular control over what data is collected
- Multi-platform: Works on both Android and iOS
- Custom Callbacks: Support for custom analytics implementations
🤝 Contributing
We love your input! We want to make contributing to BelZSpeedScan as easy and transparent as possible, whether it's:
- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing new features
- Becoming a maintainer
Please read our Contributing Guide for details on our code of conduct and the process for submitting pull requests.
📋 Roadmap
Check out our Roadmap to see what's coming next and how you can help!
🐛 Known Issues
Please report any bugs or issues you find in the issues section.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Thanks to all our contributors
- Special thanks to the MLKit team for their amazing work
- The Kotlin Multiplatform community for their support
📞 Contact
⭐ Show your support
Give a ⭐️ if this project helped you!