{"id":45045776,"url":"https://github.com/homebridge-plugins/homebridge-pura","last_synced_at":"2026-02-24T05:51:17.975Z","repository":{"id":336732270,"uuid":"1150857569","full_name":"homebridge-plugins/homebridge-pura","owner":"homebridge-plugins","description":"A Homebridge plugin for Pura smart fragrance diffusers.","archived":false,"fork":false,"pushed_at":"2026-02-19T06:13:55.000Z","size":1264,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"latest","last_synced_at":"2026-02-19T12:42:31.498Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"pradeepmouli/homebridge-pura","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/homebridge-plugins.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-05T19:17:35.000Z","updated_at":"2026-02-19T06:13:03.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/homebridge-plugins/homebridge-pura","commit_stats":null,"previous_names":["qandnotu/homebridge-pura","homebridge-plugins/homebridge-pura"],"tags_count":66,"template":false,"template_full_name":null,"purl":"pkg:github/homebridge-plugins/homebridge-pura","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homebridge-plugins%2Fhomebridge-pura","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homebridge-plugins%2Fhomebridge-pura/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homebridge-plugins%2Fhomebridge-pura/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homebridge-plugins%2Fhomebridge-pura/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/homebridge-plugins","download_url":"https://codeload.github.com/homebridge-plugins/homebridge-pura/tar.gz/refs/heads/latest","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/homebridge-plugins%2Fhomebridge-pura/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29768802,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T01:40:24.820Z","status":"online","status_checked_at":"2026-02-24T02:00:07.497Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2026-02-19T08:03:15.035Z","updated_at":"2026-02-24T05:51:17.970Z","avatar_url":"https://github.com/homebridge-plugins.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"branding/icon.png\" alt=\"Pura Logo\" width=\"125\" /\u003e\n\n[![verified-by-homebridge](https://img.shields.io/badge/homebridge-verified-blueviolet?color=%23491F59\u0026style=flat)](https://github.com/homebridge/homebridge/wiki/Verified-Plugins)\n\n**A Homebridge plugin for Pura smart fragrance diffusers.**\n\nThis plugin is intentionally simple. By default it exposes a single on/off switch per diffuser, and can optionally expose a separate nightlight service.\n\nIt’s designed to be used with Pura’s away mode and scheduling features disabled, so HomeKit can act as the primary automation layer.\n\n## Supported Diffusers\nThis plugin has been designed and tested for the following diffusers.\n\n\u003cimg src=\"branding/supported-devices.png\" alt=\"Supported Pura Diffusers\" /\u003e\n\n## Installation\n\n1. Install this plugin using: `npm install -g @homebridge-plugins/homebridge-pura`\n2. Edit your `config.json` file (see sample config below)\n3. Run Homebridge\n\n## Configuration\n\nAdd the following platform to your `config.json`:\n\n```json\n{\n  \"platforms\": [\n    {\n      \"name\": \"Pura Smart Diffuser\",\n      \"platform\": \"PuraSmartDiffuser\",\n      \"username\": \"your-pura-email@example.com\",\n      \"password\": \"your-pura-password\",\n      \"forceNightlightOff\": false,\n      \"enableNightlightAccessory\": false\n    }\n  ]\n}\n```\n\n### Configuration Options\n\n- **username**: Your Pura email - *required*\n- **password**: Your Pura password - *required*\n- **forceNightlightOff**: Pura turns the nightlight on/off with the diffuser. Enable to prevent the light from staying on. (default: false)\n- **enableNightlightAccessory**: Enables nightlight controls for compatible diffusers, including On/Brightness/Color. (default: false)\n\n## Usage\n\nOnce configured, your Pura diffusers will appear in the Home app as a single switch per diffuser (e.g., \"Living Room Diffuser\").\nIf `enableNightlightAccessory` is set to `true`, each compatible diffuser also includes a separate `Nightlight Control` Lightbulb service.\n\n### Controls\n\n- **Power**: Turn the diffuser on/off\n- **Nightlight Control (optional)**:\n  - On/Off\n  - Brightness (snapped to support Pura's 10-step brightness levels)\n  - Color (Hue/Saturation)\n\n### Device Management\n\nThe plugin will automatically:\n- Discover all Pura devices on your account\n- Create one switch per diffuser (plus optional `Nightlight Control` on compatible models)\n- Update device status via realtime updates with a 5-minute polling fallback (15s when realtime is down)\n- Handle authentication and token refresh (including periodic Cognito refresh polling)\n\n## Recommended Usage\n\n- Use this plugin in lieu of Pura schedules or auto-away.\n- Enable **Auto-alternative fragrances** in the Pura app to ensure equal scent distribution.\n\n## Troubleshooting\n\n### Authentication Issues\n\nIf you encounter authentication errors:\n1. Verify your username and password are correct\n2. Check that your Pura account is active and can log in to the mobile app\n3. Ensure your internet connection is stable\n\n### Device Not Appearing\n\nIf your Pura device doesn't appear in HomeKit:\n1. Check that the device is online and connected to WiFi\n2. Verify it appears in the Pura mobile app\n3. Check Homebridge logs for error messages\n4. Try restarting Homebridge\n\n### Connectivity Issues\n\nIf the plugin loses connection:\n1. Check your internet connection\n2. Verify Pura services are operational\n3. Try restarting the plugin by restarting Homebridge\n\n## Support\n\nFor issues and feature requests, please use the [GitHub Issues](https://github.com/homebridge-plugins/homebridge-pura/issues) page.\n\n## Credits\n\nThis plugin is inspired by and based on the [pypura](https://github.com/natekspencer/pypura) Python library by @natekspencer.\n\n## License\n\nApache-2.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhomebridge-plugins%2Fhomebridge-pura","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhomebridge-plugins%2Fhomebridge-pura","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhomebridge-plugins%2Fhomebridge-pura/lists"}