{"id":15650362,"url":"https://github.com/zurfyx/eddystone-web-bluetooth","last_synced_at":"2025-04-30T16:46:05.121Z","repository":{"id":57219475,"uuid":"95388295","full_name":"zurfyx/eddystone-web-bluetooth","owner":"zurfyx","description":"Web Bluetooth Eddystone made easier.","archived":false,"fork":false,"pushed_at":"2017-09-18T22:28:18.000Z","size":2672,"stargazers_count":36,"open_issues_count":0,"forks_count":5,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-09T16:49:27.983Z","etag":null,"topics":["eddystone","library","physical-web","web-bluetooth"],"latest_commit_sha":null,"homepage":"https://zurfyx.github.io/eddystone-web-bluetooth","language":"TypeScript","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/zurfyx.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":"2017-06-25T22:03:36.000Z","updated_at":"2023-09-08T17:26:47.000Z","dependencies_parsed_at":"2022-08-29T02:12:09.133Z","dependency_job_id":null,"html_url":"https://github.com/zurfyx/eddystone-web-bluetooth","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zurfyx%2Feddystone-web-bluetooth","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zurfyx%2Feddystone-web-bluetooth/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zurfyx%2Feddystone-web-bluetooth/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zurfyx%2Feddystone-web-bluetooth/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zurfyx","download_url":"https://codeload.github.com/zurfyx/eddystone-web-bluetooth/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251747651,"owners_count":21637404,"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":["eddystone","library","physical-web","web-bluetooth"],"created_at":"2024-10-03T12:34:17.682Z","updated_at":"2025-04-30T16:46:05.102Z","avatar_url":"https://github.com/zurfyx.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Eddystone Web Bluetooth\n\n\u003e Web Bluetooth Eddystone made easier\n\n[![Build Status](https://travis-ci.org/zurfyx/eddystone-web-bluetooth.svg?branch=master)](https://travis-ci.org/zurfyx/eddystone-web-bluetooth)\n[![David](https://david-dm.org/zurfyx/eddystone-web-bluetooth.svg)](https://david-dm.org/zurfyx/eddystone-web-bluetooth)\n[![David](https://david-dm.org/zurfyx/eddystone-web-bluetooth/dev-status.svg)](https://david-dm.org/zurfyx/eddystone-web-bluetooth#info=devDependencies)\n[![Code Climate](https://codeclimate.com/github/zurfyx/eddystone-web-bluetooth/badges/gpa.svg)](https://codeclimate.com/github/zurfyx/eddystone-web-bluetooth)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./assets/demo.gif\" width=\"500\" /\u003e\u003cbr /\u003e\n  \u003ca href=\"#getting-started\"\u003eGetting started source-code\u003c/a\u003e using \u003ca href=\"https://twitter.com/ThePhysicalWeb/status/770262699766755329\"\u003ePhysical Web beacons\u003c/a\u003e\n\u003c/p\u003e\n\n## Features\n\n- [x] Scan Eddystone beacons\n- [x] Connect / Disconnect\n- [x] Monitor connection status\n- [ ] Read Capabilities\n- [ ] Read / Write Active Slot\n- [x] Read / Write Advertising Interval\n- [x] Read / Write Radio Tx Power\n- [x] Read / Write Advertised Tx Power\n- [x] Read Lock State\n- [ ] Write Lock State\n- [ ] Read / Write Unlock\n- [ ] Read Public ECDH Key\n- [ ] Read EID Identity Key\n- [x] Read / Write ADV Slot Data\n- [x] Write Factory reset\n- [ ] Read / Write Remain Connectable\n\n## Getting started\n\n```\nnpm install --save eddystone-web-bluetooth\n```\n\n```javascript\nvar eddystone = new Eddystone();\nvar beacon, service;\neddystone.request() // Scan for Eddystone beacons.\n  .then((newBeacon) =\u003e {\n    beacon = newBeacon;\n    return beacon.connect(); // Connect to the Beacon's GATT service.\n  })\n  .then((newService) =\u003e {\n    service = newService;\n    return service.isLocked(); // Check if the beacon is locked.\n  })\n  .then((isLocked) =\u003e {\n    if (isLocked) {\n      return Promise.reject('The beacon is locked. Can\\'t write new URL');\n    }\n    // Beacon's not locked. We can proceed with the recording of the new URL.\n    // Keep in mind that the encoded URL must NOT be longer than 18 characters.\n    return service.writeUrl('https://www.google.com');\n  })\n  .then(() =\u003e {\n    beacon.disconnect();\n    alert('OK!');\n  });\n```\n\nSee the rest of the services [here](https://github.com/zurfyx/eddystone-web-bluetooth/blob/master/src/beacon/BeaconService.ts).\n\n## Development\n\nEddystone Web Bluetooth implementation is based on the official specifications:\n\n[https://github.com/google/eddystone/tree/master/configuration-service](https://github.com/google/eddystone/tree/master/configuration-service)\n\n## Contributions\n\nContributions are very welcome.\n\n## License\n\nMIT © [Gerard Rovira Sánchez](//zurfyx.com)\n\n----\n\nSpecial thanks to @beaufortfrancois for providing https://github.com/beaufortfrancois/sandbox/blob/gh-pages/web-bluetooth/eddystone-url-config/app.js magnificent example source code.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzurfyx%2Feddystone-web-bluetooth","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzurfyx%2Feddystone-web-bluetooth","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzurfyx%2Feddystone-web-bluetooth/lists"}