{"id":13827922,"url":"https://github.com/Timeular/noble-mac","last_synced_at":"2025-07-09T05:30:49.753Z","repository":{"id":46036776,"uuid":"149258953","full_name":"Timeular/noble-mac","owner":"Timeular","description":"Noble MacOS bindings using the official CoreBluetooth API","archived":false,"fork":false,"pushed_at":"2021-09-01T05:53:11.000Z","size":68,"stargazers_count":94,"open_issues_count":6,"forks_count":34,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-08-05T09:17:03.189Z","etag":null,"topics":["ble","corebluetooth-api","macos","nodejs"],"latest_commit_sha":null,"homepage":"","language":"Objective-C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Timeular.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-18T09:03:05.000Z","updated_at":"2023-03-08T20:10:53.000Z","dependencies_parsed_at":"2022-07-18T17:17:13.140Z","dependency_job_id":null,"html_url":"https://github.com/Timeular/noble-mac","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Timeular%2Fnoble-mac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Timeular%2Fnoble-mac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Timeular%2Fnoble-mac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Timeular%2Fnoble-mac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Timeular","download_url":"https://codeload.github.com/Timeular/noble-mac/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225486473,"owners_count":17481908,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ble","corebluetooth-api","macos","nodejs"],"created_at":"2024-08-04T09:02:20.544Z","updated_at":"2024-11-20T07:31:18.211Z","avatar_url":"https://github.com/Timeular.png","language":"Objective-C++","funding_links":[],"categories":["Objective-C++"],"sub_categories":[],"readme":"\n\u003e Note: this project was integrated in [@abandonware/noble](https://github.com/abandonware/noble) and is no longer actively maintained\n\n# Noble (Node.js Bluetooth LE) for MacOS\n\n[![Build Status](https://travis-ci.com/Timeular/noble-mac.svg?branch=master)](https://travis-ci.com/Timeular/noble-mac)\n\n_The mac bindings in the [`noble`](https://github.com/sandeepmistry/noble) repository use a XPC connection and an undocumented protocol to communicate directly with the bluetooth daemon.\nThis is error prone, as the protocol needs to be reverse engineered by sniffing the communication between a regular program which uses the official CoreBluetooth API and the \nbluetooth daemon. Since the protocol is not public Apple can change it at anytime (For now every new OSX release changed the protocol)._\n\nThis package provides the same functionality as the regular noble mac bindings using the official [CoreBluetooth API](https://developer.apple.com/documentation/corebluetooth).\n\n## System Requirements\n * Node.js v6.14.2 or later.\n * macOS 10.7 or later\n\n## Prerequisites\n\n### OS X\n * install [Xcode](https://itunes.apple.com/ca/app/xcode/id497799835?mt=12)\n\n## Installation\nCurrently, it has not been published yet on `npm`, so please try to add the dependence as the following.\n```json\n\"dependencies\": {\n    \"noble-mac\": \"https://github.com/Timeular/noble-mac.git\"\n}\n```\nThen, please run `npm install` again.\n\n## Usage\nSimply require `noble-mac` instead of `noble`:\n```javascript\nconst noble = require('noble-mac');\n```\nOn non-Mac platforms this will use the regular [noble](https://github.com/sandeepmistry/noble/blob/master/README.md) implementation and on MacOS it will use the native binding using the official CoreBluetooth API.\n\n## Note\nBe careful to not write to the `Client Characteristic Configuration` descriptor directly to enable notification.\nUse `subscribe` instead to enable and listen to notifications.\n## Implementation Status\nEverything should work that also works with the regular noble mac bindings.\n * Broadcast is not implemented, but it neither was in recent noble mac bindings\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTimeular%2Fnoble-mac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTimeular%2Fnoble-mac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTimeular%2Fnoble-mac/lists"}