lif
github.com/fishy/lifxlan
go get github.com/fishy/lifxlan
lif

github.com/fishy/lifxlan

LIFX LAN Protocol implemented in Go

by Yuxuan 'fishy' Wang

v0.3.1 (see all)License:BSD-3-Clause
go get github.com/fishy/lifxlan
Readme

PkgGoDev Go Report Card

LIFX LAN

This is a library that provides API implemented in Go for LIFX LAN Protocol.

Overview

The root package focuses on the base stuff, device discovery, and capabilities shared by all types of devices. Subpackages provide more concreted capabilities by different types of LIFX devices like light control and tile control.

Currently this library is not complete and implement all possible LIFX LAN Protocols is not the current goal of this library. The design choice for this library is that it exposes as much as possible, so another third party package can implement missing device APIs by wrapping Devices returned by this package. Please refer to the subpackage code for an example of extending device capabilities. The reason its split into subpackages is to make sure that it's extendible.

The main focus right now is on tile API support. The reason is that at the time of writing, although there are several Go projects implemented LIFX LAN Protocol available, none of them support tile APIs. Please refer to tile subpackage on GoDoc for more details.

All API with (potential) I/O calls takes a context arg and checks for (and in most cases, relies on) context cancellations.

The API is unstable right now, but I try very hard not to break them.

Examples

Besides examples on GoDoc, there are also some example command line apps in lifxlan-examples repository.

License

BSD License.

GitHub Stars

11

LAST COMMIT

4mos ago

MAINTAINERS

0

CONTRIBUTORS

2

OPEN ISSUES

0

OPEN PRs

0
VersionTagPublished
v0.3.1
6mos ago
v0.3.0
1yr ago
v0.2.0
1yr ago
v0.1.3
2yrs ago
No alternatives found
No tutorials found
Add a tutorial