react-native-peer-transfer
v0.1.0
Published
Peer-to-peer data and file transfer for React Native using nearby device discovery.
Readme
react-native-peer-transfer 🚀
Attention: Under development & in testing phase, will release soon
A lightweight peer-to-peer device discovery and data transfer library for React Native using:
- 🔵 Bluetooth Low Energy (BLE) for nearby device discovery
- 🌐 Local Wi-Fi (TCP) for fast data transfer
- 📱 On-device, no internet required
- ⚡ Optimized for React Native New Architecture (RN ≥ 0.72+)
✨ Features
- 🔍 Discover nearby devices using BLE
- 🧠 Deterministic role selection (Sender / Receiver)
- 🔐 Secure local-only communication
- 📡 BLE for handshake, Wi-Fi TCP for payload
- 🧩 Native module (Kotlin / Objective-C++)
- 🛠 Designed as a reusable npm package
📦 Installation
npm install react-native-peer-transfer
# or
yarn add react-native-peer-transferAdd these to AndroidManifest.xml:
┌──────────┐ BLE Scan ┌──────────┐ │ Device A │ ◄─────────────────► │ Device B │ │ RECEIVER │ │ SENDER │ └────┬─────┘ └────┬─────┘ │ Handshake via BLE │ │ │ │◄──────── TCP over Wi-Fi ─────────►│ │ Actual data transfer │
API Reference BLE PeerTransfer.startBleAdvertising(deviceId) PeerTransfer.stopBleAdvertising() PeerTransfer.startBleScan() PeerTransfer.stopBleScan()
TCP PeerTransfer.startTcpServer(port) PeerTransfer.sendTcpMessage(ip, port, message)
Events PeerTransfer.onDeviceFound(callback) PeerTransfer.onMessageReceived(callback)
