Skip to content
Shiny.NET
Commercial SupportGuaranteed response times on Shiny bug fixes, straight from the maintainers. Plans from US$1,500 a year.See the plans

Hardware & Connectivity

The parts of an app where every platform does it differently and the documentation assumes you already know. Each library owns the native code, the permissions and the background rules, and gives you one API across iOS, Android, Windows, macOS and beyond.

BluetoothLE

Scan, connect and talk to BLE peripherals — reactive and async

Get started

A unified API for the Bluetooth LE central role: scanning, connecting and talking to peripherals. It wraps each platform's native BLE stack and gives you a consistent reactive and async experience.

  • Scanning and connection management
  • GATT services, characteristics and descriptors
  • L2CAP channels and background operations
  • Blazor and Linux packages

BluetoothLE Hosting

Turn your device into a BLE peripheral with custom GATT services

Get started

Let your app act as a BLE peripheral: advertise services, host GATT services with characteristics, and talk to the central devices that connect to you.

  • Advertising
  • GATT services and characteristics
  • A source generator for GATT services
  • L2CAP, plus a Linux package

BluetoothLE Hubs

SignalR style hubs between nearby devices over Bluetooth LE

Get started

One device hosts a hub and nearby devices connect and call it through a source generated, strongly typed proxy. The host pushes events to everyone, one client or a group - no server or network required.

  • One interface describes calls and pushes
  • Source generated proxies, AOT safe
  • Groups, streaming and per hub start/stop
  • L2CAP file transfers

Universal Hubs

BluetoothLE Hubs over Wi-Fi as well as Bluetooth LE

Get started

Write the hub once and serve it over Bluetooth LE and Wi-Fi at the same time. Clients discover hosts over BLE and mDNS in one list, connect over Wi-Fi when they can and fall back to BLE, and share the same hub, groups and pushes.

  • One hub served over BLE and Wi-Fi
  • Merged BLE + mDNS discovery
  • Wi-Fi first with BLE fallback and resume
  • Per hub start/stop and tunnels

Beacons

iBeacon and Eddystone — ranging, region monitoring and broadcasting

Get started

Both beacon formats that matter — Apple's iBeacon and Google's Eddystone. Range for proximity in the foreground, monitor regions in the background, or broadcast as a beacon yourself.

  • Ranging for live proximity
  • Region monitoring
  • Eddystone support
  • Broadcasting, with distance & accuracy guidance

OBD

Talk to vehicles through OBD-II adapters

Get started

Communicate with vehicles through OBD-II adapters using a command-object pattern with typed results, pluggable transports and adapter auto-detection.

  • Command objects with generic return types
  • BLE, Wi-Fi and serial transports — or write your own
  • Mode 06 test results and VIN decoding
  • An adapter emulator for testing without a car

Reverse Geocoding

Turn coordinates into addresses

Get started

Reverse geocode a position into placemarks with the platform geocoder — no API key — or OpenStreetMap Nominatim.

  • Platform geocoder, no API key
  • OpenStreetMap Nominatim
  • Structured placemarks

Motion Activity

Know whether the user is walking, running, driving or still

Get started

Observe the activity the device reports — walking, running, cycling, driving or stationary — as plain .NET events.

  • Activity changes as plain .NET events
  • Confidence with every reading

Network Discovery

Find things on the local network and advertise your own

Get started

Discover printers, casting targets, IoT devices, ONVIF cameras and other instances of your app — and publish your own services — across the three protocols that matter.

  • mDNS / DNS-SD (Bonjour, Zeroconf)
  • SSDP / UPnP
  • WS-Discovery and ONVIF
  • Publish your own service

Wi-Fi

Scan, join and manage Wi-Fi networks, and host a hotspot

Get started

Scan for access points in range, join and leave networks, manage the ones the device has saved, watch the current network's SSID, signal, IP and DNS, and host a hotspot.

  • Scan for networks
  • Join, leave and rejoin saved networks
  • Watch the current network
  • Host a hotspot

VPN

Drive the OS's built-in IKEv2 VPN client from your app

Get started

Install your IKEv2 VPN profile on the device, connect and disconnect it from code, and watch whether it is up - using the client the operating system already ships.

  • Shared secret, username/password or certificate
  • Connect and wait until it is really up
  • Live connection state
  • Keeps running after the app closes

Wearables

Talk to your Apple Watch or Wear OS companion app

Get started

One API over WatchConnectivity and the Wear OS Data Layer: live messages with replies, shared context, queued transfers and files, delivered to a delegate even when the app is in the background.

  • Live messages answered by a delegate
  • Latest-value context and queued transfers
  • File transfers both ways
  • iOS and Android, including .NET Wear OS apps

Screen Recording

Record the screen to MP4, with microphone and system audio

Get started

Capture the screen with each platform's native recorder, with the microphone and the device's own audio mixed in where the OS allows it.

  • MP4 output with optional mic and system audio
  • Pause and resume
  • Handles the OS ending a recording for you
  • Android, iOS, Mac Catalyst, macOS, Windows, Linux and Blazor WebAssembly

Gamepads

Read game controllers, with rumble, battery, motion and light bars

Get started

Sticks, triggers and buttons from one API on every platform, named by position so "A" is the bottom face button on an Xbox, PlayStation and Nintendo pad alike.

  • State snapshots for a render loop, events for menus
  • Radial deadzones that rescale, not per-axis cuts
  • Rumble, battery, gyroscope and light bars, gated per controller
  • Android, iOS, tvOS, Mac Catalyst, macOS, Windows, Linux and Blazor WebAssembly

Game Center

Achievements, leaderboards and friends over Game Center and Play Games

Get started

One set of keys for Apple Game Center and Google Play Games Services, with progress queued on the device so an offline or signed-out player never loses an unlock.

  • Unlock, increment and reveal achievements by logical key
  • Durable offline queue with idempotent, absolute progress
  • Global and friends-only leaderboards, plus the friends list
  • iOS, Mac Catalyst, macOS and Android

Printing

Receipt printers over BLE, WiFi and the browser, plus OS-native printing

Get started

Build a receipt once as a PrintDocument and stream it as ESC/POS to a thermal printer over Bluetooth LE, TCP or the browser - or hand a PDF, image or HTML to AirPrint, Android, Windows or CUPS for any installed printer.

  • Fluent receipts: styled text, barcodes, QR codes, dithered images, cut
  • BLE, raw TCP 9100 with mDNS discovery, Web Bluetooth / Serial / USB
  • AirPrint, PrintManager, GDI+ / shell, CUPS and window.print()
  • Render the same receipt to PDF for an office printer