navigator.bluetoothYour web app code is identical to what works on Chrome and Edge. A Safari Web Extension cleared by Apple's public App Store review — the first time Web Bluetooth actually works on iOS.
Get started in under a minute. No configuration, no server-side changes.
Drop a single script tag into your HTML. That's the entire integration.
<script src="https://ioswebble.com/webble.js"></script>
On first visit, users install the free companion app and enable WebBLE in Settings > Apps > Safari > Extensions.
The standard Web Bluetooth API is now available. Your existing code works without changes.
If your users have to install an app to use your device, you're leaving the web half of your market on the table. WebBLE gives you the Safari side for free.
Stream workout data to a coach's web console without asking runners to install another app.
Live trainer / race dashboards on the web — HRMs, power meters, rowers, smart trainers.
Clinic-facing web dashboards for remote patient monitoring and telehealth visits.
Audiologist web consoles and user self-fitting portals — no native companion required.
Hotel, coworking, and multifamily web check-in flows without forcing a native install.
QR-to-Safari first-time setup replaces the "install our app" activation drop-off.
BLE printers, scanners, fleet trackers, cold-chain loggers — field workers on any device.
Firmware updates, EQ tuning, controller mapping delivered through a web app.
Use the standard Web Bluetooth API. We handle the Safari part.
WebBLE polyfills the Web Bluetooth API for Safari. If the user has Chrome or Android with native support, the polyfill stays out of the way. Your code is always standard.
Works with every framework, or no framework at all.
Background Sync — Keep BLE devices active, fire iOS notifications for characteristic updates, and register beacon scans with Background Sync docs.
AI Agent Integration — AI agents can add
WebBLE to any project in 30 seconds via MCP. Run
npx ioswebble init or let your agent handle it.
The polyfill is free and pure-W3C. For teams that need iOS-specific capabilities,
the extension exposes them on the vendor-prefixed
window.webbleIOS surface —
never on navigator.bluetooth.
Keep a CGM stream alive when the phone locks.
await window.webbleIOS.backgroundSync.register({...});
Low-battery alerts for insulin pumps and hearing aids. Threshold breaches for clinical flows.
Workout session progress visible while the user does something else on the phone.
Warehouse forklift logs arrival automatically at a yard beacon — no app launch needed.
Two phones chat end-to-end encrypted with no internet. See the ble-e2e-chat flagship demo.
await window.webbleIOS.peripheral.advertise({...});
Your brand in the App Store without building a native iOS app from scratch.
You ship Bluetooth hardware with a native iOS app. We can help you offer a web app alongside it. 30-minute call, no pitch — we just want to hear what you're shipping.