#air-quality #hue #light #color #data #change #purple

app purple-hue

Change a hue light's color based on air quality data from purple air

8 releases

0.2.2 Jul 24, 2022
0.2.1 Jul 24, 2022
0.1.4 Jul 23, 2022
0.1.3 Aug 29, 2021
0.1.2 Sep 6, 2020

#699 in Hardware support

Download history 14/week @ 2024-02-26 7/week @ 2024-03-11 57/week @ 2024-04-01

64 downloads per month

Custom license

206 lines


Change a hue light's color based on air quality data from purple air.




cargo install purple-hue


purple-hue is in the AUR.


In order to run purple-hue, you need to configure a sensor, light and register a user.

You can find the sensor id from the purple air map. The light id is available through these instructions. Finally, you can register a user via purple-hue register-user. Save all of these in a purple-hue.toml file either at /etc/purple-hue.toml, ./purple-hue.toml or $XDG_CONFIG/purple-hue.toml. An example configuration follows.

light_id = 1
sensor_id = 1
user_id = "user-id"

Instead of providing a sensor_id, you can also set a sensor_ip if you are able to access the http api of a given sensor.


This repository has a systemd unit and timer that can be used to run this as a systemd service every minute.


The following instructions are for deploying updates to this repository to crates.io and to the Arch User Repository.

  1. Identify the new tag version you'll use for the Release
  2. Update the version in Cargo.toml
  3. Regenerate lockfile cargo generate-lockfile
  4. Commit & create a new git tag and push it to the origin repository.
  5. cargo publish
  6. Update the pkgver in the PKGBUILD
  7. Download the tar.gz file that github generated for the tag and record the sha 512 sum in the PKGBUILD
  8. Copy the updated PKGBUILD to the git repository for the AUR package
  9. makepkg --printsrcinfo > .SRCINFO in the AUR package repository
  10. commit the updated PKGBUILD to the AUR repository


~292K SLoC