Skip to main content
Inside the cskn mobile, desktop and TV apps, your page can reach native features through a message bridge at window.cskn.bridge. The SDK wraps every message in a typed function and a React hook, so you never post raw messages yourself.
The bridge is installed by the shell before your code runs. On TV, where the app runs in an iframe, the SDK installs a postMessage relay itself when the shell marks the URL; you do not need to do anything.

Availability

The same code also runs in a plain browser, where there is no bridge. Every call returns at once there, in one of four ways:
“Empty” and “not available” keep your code from hanging, but nothing is stored, read or shared. Where the feature matters in a browser, check isAvailable() and use a web alternative: localStorage, navigator.clipboard, <input type="file">, navigator.share.

Features

App control

Native header, close the app

System bars

Status and navigation bar colors

Camera

Photos and video

QR scanner

QR and barcodes

Image picker

Pick from the gallery

Clipboard

Read and write text

Storage

App-scoped and encrypted storage

Notifications

Permission, local notifications, badge, inbox

Web Push

Notifications in a browser

Share

System share sheet

Haptics

Tactile feedback

Biometrics

Face ID, Touch ID, fingerprint

Passkeys

WebAuthn on every surface

Keyboard

Keyboard avoidance

Platform and language

OS, host kind, UI language

Deep links

Open apps and routes