Sparkled is a web-based LED sequencer that aims to reduce the barrier to entry for lighting projects.
With Sparkled, you get an integrated solution containing:
- A rich web interface for staging, sequencing, previewing and scheduling music-backed LED animations
- A fast UDP service to stream rendered pixel data to Sparkled clients, which use the data to drive LED strips (or whatever you want!)
Sparkled clients are responsible for rendered pixel data from the Sparkled server and displaying it on the LED strips. The official Sparkled clients are listed below:
- sparkled-client-esp (ESP32 and ESP8266)
- Add more effect types
- Multithreaded rendering
- Support sequences without music (currently requires a mute MP3 file to be uploaded)
- Ability to replace MP3 files for existing sequences (even with different lengths)
Sparkled is currently in pre-alpha, so significant chunks of core functionality are still missing or incomplete.
These instructions will get you a copy of the project up and running on your local machine.
The following software and hardware requirements must be met before installing the Sparkled server:
- Java 11 or later
- Gradle 7 or later (or use
gradlew
) - A modern web browser
Fork and clone the repository
SSH:
git clone [email protected]:<your_username>/sparkled.git
HTTPS:
git clone https://github.com/<your_username>/sparkled.git
Build the project
Note: the initial build will take quite a while, as all of the dependencies need to be downloaded
cd sparkled
./gradlew clean copyWebUi shadowJar
Run Sparkled
cd build/libs
java -jar sparkled-0.0.1-all.jar
Wait for the application to start, then connect to the UI in Chrome via the following URL:
http://localhost:8080
Use gradle
to run the backend unit tests:
cd sparkled
./gradlew test
Use npm
to run the frontend unit tests:
cd sparkled/webui
npm run test
- Chris Parton - chrisparton1991
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE file for details.
- EJ-Technologies for providing an Open Source license for JProfiler, the award winning all-in-one Java Profiler.
- FastLED for building and maintaining an incredible LED strip library, without which this project would never have been conceived.
- The FastLED community for being a great source of help and inspiration.