Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/improv-wifi/sdk-ble-js

JavaScript SDK to add Improv Wi-Fi over BLE to your website.
https://github.com/improv-wifi/sdk-ble-js

esp32 esp8266 webbluetooth wifi-provisioning

Last synced: 3 months ago
JSON representation

JavaScript SDK to add Improv Wi-Fi over BLE to your website.

Awesome Lists containing this project

README

        

# JavaScript SDK for Improv Wi-Fi over BLE

## Installation

You can use the JavaScript SDK by adding the following HTML to your website:

```html

```

If you are using a bundler and JavaScript package manager, you can install the SDK via NPM:

```
npm install --save improv-wifi-sdk
```

And then import it in your code:

```
import 'improv-wifi-sdk';
```

## Usage

Add the following to your website to show a button to start the provisioning process:

```html

```

A warning message will be rendered if the browser does not support WebBluetooth.

### Attributes

The following attributes are automatically added to `` and can be used for styling:

| Attribute | Description |
| -- | -- |
| `supported` | Added if this browser is supported
| `unsupported` | Added if this browser is not supported

### Slots

It is possible to customize the button and the message. You do this by putting your elements inside the `` element and adding the appropriate `slot` attribute. Use `activate` to replace the activation button and `unsupported` to replace the unsupported message:

```html

Start provisioning!
Your browser does not support provisioning.

```

## Events

When the state of provisioning changes, a `state-changed` event is fired.

A `state-changed` event contains the following information:

Field | Description
-- | --
state | The current state (`CONNECTING`, `AUTHORIZATION_REQUIRED`, `AUTHORIZED`, `PROVISIONING`, `PROVISIONED`, `ERROR`, `UNKNOWN`)

## Browser Support

This SDK requires a browser with support for WebBluetooth. Currently this is supported by Google Chrome, Microsoft Edge and other browsers based on the Blink engine.

No iOS devices are supported.