Control My Lights

An interactive light installation in my home controlled a website, Twitch chat, YouTube chat. This was streamed over 3 weeks, and had 220 individual active users (those that sent a command), and 2093 Twitch live views (310 via Twitch and 895 from external sources).

Control My Lights screenshot

An interactive light installation in my home controlled a website, Twitch chat,  YouTube chat. This was streamed over 3 weeks, and had 220 individual active users (those that sent a command), and 2093 Twitch live views (310 via Twitch and 895 from external sources).

To see the making of  see this blog post: The Making of Control My lights.

See the GitHub link: https://github.com/EdwardDeaver/ControlMyLights

Demo of different sources being triggered


Description: During the Summer of 2020, I launched controlmylights.net, an interactive light exhibit powered by a complex construction of NodeJS streaming data, Python, Redis, MongoDB, openFrameworks, ReactJS and Arduino controlling DIY LED tube lights. Chat data was gathered via Twitch’s API, and a Selenium scraping program for YouTube’s chat. It used Redis for an internal queue and pub/sub, as well as a MongoDB (NoSQL) database to store color commands. The program was architected using a Message Oriented Middleware paradigm with Node.JS as the main language. I created a website with buttons for every color that the light application supported using ReactJS and originally designed it in Figma. That project raised funds for Feeding America with several active users and over 2,000 Twitch views.

This was the website that you could control it from:

0:00
/
Controlmylights.net - showing the color picker and buttons working. It rate limited users.

Twitch and YouTube streams chats were embeded due to issues surrounding the need for 100 subscribers to embed your YouTube streams.

By the end it raised $225 for Feeding America and taught me a lot about interactivity.

0:00
/
0:00
/