A little project to control my bedroom lighting without invasive apps.
Configuration is done via config.json
. This repo includes a config-sample.json
file which you can reference to start your own config. Available configurations are listed below:
port (int)
: Port for the light-bubble server to run onhost (str)
: Host for the light-bubble server to listen ontheme (str)
: Your preferred interface for light-bubble. Available themes are:- default: A plain and understated theme
- horizon: Heavily inspired by a slice-of-life game I can't play yet
devices (arr of devices)
: Configurations for individual devices, in order of appearance on the interface
Supported devices and their configurations are listed below
make (str)
:"tuya"
model (str)
:"outlet"
config (obj)
: Configuration for the Tuya outletid (str)
: Unique ID for the devicekey (str)
: API key for the deviceip (str)
: IP address of the device
title (str)
: Your name for the devicefields (arr of str)
: Your labels for each outlet on the device
Once your configuration is set, you can start light-bubble on your configured port as follows:
npm start
First, move config-sample.json
to config.json
and configure as needed. Build the container, then run it on port 49160 (or whatever port you want):
docker build -t light-bubble .
docker run -p 49160:8080 -d light-bubble
light-bubble can be themed by creating the following files:
static/theme-${theme_name}/
style.css
: stylesheet for the themeicon.png
: a 192x192px png for the theme's app iconmanifest.webmanifest
: a webmanifest customized for the theme
Simply set the theme
field in your config.json
to the name of your theme, and you're done!