Nomnom Pumpernickle Muffins
    Wondering what’s next for npm?Check out our public roadmap! »


    0.1.9 • Public • Published


    Circle CI Bower npm Licence MIT

    This library has been deprecated in favour of webbluetooth.

    Please upgrade your Node.js applications accordingly. Evothings users should continue to use bleat as a legacy library.

    Bleat (Bluetooth Low Energy Abstraction Tool) provides a simplified BLE layer which uses adapters to abstract the usage of BLE in JavaScript on different platforms.


    Bleat has 2 APIs:


    To install the library, either clone or copy the files to your project or use a package manager:

    $ npm install bleat


    $ bower install bleat


    The bluetooth.helpers.js file contains general helper objects and functions.

    The api.<api>.js files each offer a BLE API.

    The adapter.<platform>.js files each represent an adapter targetting a specific BLE engine, the adapter-template.js file is an empty template to ease creation of a new adapter.

    The <api>.<adapter>.min.js files are minified versions of the BLE APIs including the helpers and a single adapter.

    Files follow the UMDJS specification, so should work with CommonJS (such as node.js), AMD (such as RequireJS) and plain JavaScript projects.

    Refer to the example_<adapter>_<api> files and folders for simple examples of how to use each combination.

    CommonJS (node.js)

    Simply require it up, specifying the api you wish to use:

    var bleat = require('bleat').classic;


    var bleat = require('bleat').webbluetooth;

    AMD (RequireJS)

    To use bleat with RequireJS, set the requirejs.config to load your API of choice as bleat and add a dependency on your adapter of choice:

        baseUrl: 'path/to/bleat',
        paths: {
            bleat: 'api.classic',
            adapter: 'adapter.evothings'
        shim: {
            bleat: {
                deps: ['adapter']

    You can then use bleat as follows:

    require(['bleat'], function(bleat) {
        // Use bleat here

    Plain JavaScript (globals)

    Include the bluetooth.helpers.js file, then the bleat api file you wish to use and finally the adapter file you wish to use:

    <script src="path/to/bluetooth.helpers.js"></script>
    <script src="path/to/api.classic.js"></script>
    <script src="path/to/adapter.evothings.js"></script>

    Alternatively, you can just include the minified file which contains the API and adapter you wish to use:

    <script src="path/to/web-bluetooth.evothings.min.js"></script>

    A global object root.bleat will then be available to use.


    npm i bleat

    DownloadsWeekly Downloads






    Unpacked Size

    228 kB

    Total Files


    Last publish


    • avatar