Legal & Attribution

Credits & Open Source Notices

IKANDY is built on the work of many talented people. This page identifies the material third-party components, libraries, shaders, and preset collections used in IKANDY, along with the applicable author and license information available for this release. Report any error or omission to support@ikandy.app.

About IKANDY's own code: The IKANDY application, all original 2D and WebGPU scenes, image FX shaders, post-processing pipeline, native audio module, and UI are copyright © 2026 L&R Entertainment LLC. Third-party works are listed below with their respective licenses. If you believe any attribution is missing or incorrect, please contact support@ikandy.app.
Visualizer Engine
WARPCORE
IKANDY's MilkDrop engine
Proprietary

WARPCORE renders every MilkDrop preset in IKANDY, converting the legacy per-frame and per-pixel math equations into real-time WebGL shaders. It is our own engine, but it is not independent work: substantial parts of it are ported from Jordan Berg's Butterchurn, in places verbatim — the seeded RNG, the noise and blur kernels, the warp mesh, the GLSL preambles and uniform tables that make preset shaders work, the drawables, the frame orchestration. Butterchurn's MIT licence allows exactly that, and what it asks for in return is credit. So: this engine exists because Jordan Berg's does.

Butterchurn
by Jordan Berg  ·  v3.0.0-beta.5
MIT License

The WebGL port of the legendary MilkDrop music visualizer, and the origin of WARPCORE. Butterchurn is what made MilkDrop possible on the web; its code lives on inside IKANDY's engine.

github.com/jberg/butterchurn

eel-wasm
by Jordan Eldredge  ·  v0.0.17
MIT License

The EEL-to-WebAssembly compiler built into WARPCORE. Every preset's math equations run as sandboxed WebAssembly rather than generated JavaScript, which is both faster and safer.

github.com/captbaritone/eel-wasm

MilkDrop
by Ryan Geiss  ·  Nullsoft, Inc.  ·  2001
BSD 3-Clause

Ryan Geiss created MilkDrop in 2001 and gave it to the world. WARPCORE's rendering semantics and constants reference the MilkDrop 2.25c source, released by Nullsoft under the BSD 3-Clause licence. IKANDY is MilkDrop-compatible; it is not affiliated with or endorsed by Nullsoft.

Butterchurn Presets
by Jordan Berg  ·  v3.0.0-beta.4
MIT License

The bundled preset collections used by Butterchurn, including the base library, extra packs, and image-texture presets. The MIT notice applies to this repository; it does not automatically clear unrelated MilkDrop archives or every individual preset for commercial redistribution.

github.com/jberg/butterchurn-presets

MilkDrop Preset Library
Ryan Geiss & the MilkDrop community  ·  2001–present
Attribution review

MilkDrop was created by Ryan Geiss in 2001. Historic community presets identify authors such as Flexi, Martin, Geiss, Aderrasi, Rovastar, Unchained, Eo.S., shifter, and Zylot in their metadata. Author attribution is preserved where it is available.

Some historic community archives do not provide a standardized license for every individual preset. Public availability and attribution alone are not treated as permission to redistribute. A documented license or permission is required before a community preset is included in a retail IKANDY release.

The source archives reviewed for this release include collections whose image notices contain restrictions on redistribution with commercial or paid products. Any preset or texture without documented commercial clearance will be excluded from the retail build unless its rights are separately confirmed.

If you are a preset author and would like your attribution corrected or wish to discuss use of your work, contact support@ikandy.app.

3D Raymarched Scenes
CC0 Public Domain

Five 3D raymarched scenes adapted from shaders by mrange and dedicated to the public domain under Creative Commons CC0 1.0 Universal.

Liquid Metal Heart of Lightning Electric Eel Universe Face in the Clouds Saturday Weirdness
Blackle Mori
CC0 Public Domain

One 3D scene adapted from a shader by Blackle Mori, dedicated to the public domain under Creative Commons CC0 1.0 Universal.

Just a Flame
Sabo Sugi
Used with Permission

Four scenes in IKANDY are adapted from works by Sabo Sugi and included with the author's express permission. These works are not released under CC0 or any open-source license. Forks, derivatives, or redistributions of IKANDY that include these scenes require separate permission from the original author.

Ferrofluid Trails Disco Ball Hyperspace Tunnel

Ferrofluid shader  ·  x.com/sabosugi
Trails scene  ·  codepen.io/sabosugi/full/bNBVWpN
Disco Ball shader  ·  x.com/sabosugi
Hyperspace Tunnel scene  ·  x.com/sabosugi

Original IKANDY Scenes
2D Audio-Reactive Scenes
© 2026 L&R Entertainment LLC
IKANDY Original

The following scenes were designed and written from scratch by IKANDY using real-time FFT audio analysis. No external shader source was used.

Fire EQ Spectrum Waveray Aurora Starfield Singularity Voyager Pawrticles
WebGPU Scenes
© 2026 L&R Entertainment LLC
IKANDY Original

Native WebGPU scenes written in WGSL, designed and authored entirely by IKANDY.

Nebula Prism Cells IKANDY Eye
Image FX Shaders
© 2026 L&R Entertainment LLC
IKANDY Original

The listed image FX shaders were written for IKANDY using common graphics techniques. If you believe a credit or source attribution is missing, contact support@ikandy.app.

Rain Ink VHS Fog Paint Film Metal Shatter Corrupt Plasma Holo Heat
Runtime & Platform
Electron
OpenJS Foundation  ·  v42
MIT License

IKANDY is built on Electron, which provides the desktop application shell, native API access, and the Chromium rendering engine. Electron bundles Chromium and Node.js.

github.com/electron/electron

Chromium
The Chromium Authors & Google
BSD-style

Chromium provides the WebGL, WebGPU, Web Audio, and rendering surfaces IKANDY uses. Chromium is licensed under a BSD-style license and includes many third-party components. The complete license list is included with the IKANDY installer as LICENSES.chromium.html.

chromium.org

Node.js
OpenJS Foundation
MIT License

Node.js powers IKANDY's main process, IPC layer, and native module loading.

nodejs.org

Three.js
mrdoob  ·  v0.184.0
MIT License

Three.js powers IKANDY's scene-graph visuals (Trails, Just a Flame, Block Bars, and Hyperspace Tunnel), each bundled as a self-contained ESM module.

github.com/mrdoob/three.js

WASAPI — Windows Audio Session API
Microsoft Corporation
Windows SDK

IKANDY's per-process audio capture uses the Windows Audio Session API (WASAPI) from the Microsoft Windows SDK to enumerate audio sessions and capture per-application audio streams. No Microsoft source code is redistributed. The native module wrapping WASAPI is original to IKANDY.

Data & Services
Artist Bio data
Wikipedia · Wikimedia Commons
Open data

The optional Artist Bio card looks up the playing artist on demand: article summaries from Wikipedia (CC BY-SA) and images from Wikimedia Commons under their stated licenses. Attribution is shown in the card. Lookups happen only when you open the card; nothing is prefetched.

MusicBee + MBXHub
MusicBee · MBXHub by Haro
User-installed plugin

IKANDY connects to MusicBee through the user-installed MBXHub plugin for now-playing metadata, artwork, playback control, playlists, and search. MBXHub is not bundled or redistributed with IKANDY and remains subject to its developer's license and release-candidate terms.

Supabase
Commercial SaaS

IKANDY uses Supabase for optional telemetry, deletion requests, and historical beta administration. Data handling is described in the Privacy Policy.

npm Packages

The following npm packages are used in IKANDY's main process or are bundled with the application. All are used under their respective open-source licenses.

Package Version License Author / Repo
electron-log 5.4.3 MIT megahertz/electron-log
electron-updater 6.8.3 MIT electron-userland/electron-builder
three 0.184.0 MIT mrdoob/three.js
SortableJS (bundled) 1.15.7 MIT SortableJS/Sortable
steamworks.js 0.4.0 MIT ceifa/steamworks.js
@sentry/electron 7.15.0 MIT getsentry/sentry-electron
argparse 2.0.1 Python-2.0 nodeca/argparse
builder-util-runtime 9.5.1 MIT electron-userland/electron-builder
debug 4.4.3 MIT debug-js/debug
fs-extra 10.1.0 MIT jprichardson/node-fs-extra
graceful-fs 4.2.11 ISC isaacs/node-graceful-fs
js-yaml 4.1.1 MIT nodeca/js-yaml
lodash.escaperegexp 4.1.2 MIT lodash/lodash
lodash.isequal 4.5.0 MIT lodash/lodash
semver 7.7.4 ISC npm/node-semver
tiny-typed-emitter 2.1.0 MIT binier/tiny-typed-emitter
sax 1.6.0 BlueOak-1.0.0 isaacs/sax-js

A complete machine-readable license file (THIRD_PARTY_LICENSES.txt) is included in the IKANDY installation directory.

Testing & Quality
Bats586
Beta tester & QA

Primary beta tester. Responsible for surfacing mirror mode issues, 5.1/7.1 audio edge cases, and numerous UX regressions before they reached release.

Fonts

Spout2 / SpoutDX

leadedge · v2.007.017 · github.com/leadedge/Spout2 · BSD-style license

Spout is a Windows GPU texture sharing framework used by OBS, TouchDesigner, Resolume, MadMapper, and vMix. IKANDY uses SpoutDX to publish its primary window as a real-time Spout sender. The Spout2 SDK is vendored and statically linked — no runtime DLL required.

Ableton Link

Ableton AG · github.com/Ableton/link · under license from Ableton

Ableton Link keeps musical tempo and beat phase in sync across applications on a local network. IKANDY works with Ableton Link so its tempo can lock to other Link-enabled software and hardware. Ableton and Link are trademarks of Ableton AG. IKANDY is not affiliated with, sponsored by, or endorsed by Ableton AG.

cmake-js

cmake-js contributors · github.com/cmake-js/cmake-js · MIT license

cmake-js builds IKANDY’s native C++ addons (audio loopback capture and Spout output) against the correct Electron ABI using CMake and node-addon-api.

Imported & featured shader artists

Shaders brought into IKANDY stay credited to the people who made them. Artists whose work ships with or is featured in IKANDY are listed here, each with a link back to where you can find them. If your work appears in IKANDY and you’re not listed — or you want your link changed — reach out below.

Moon texture

Solar System Scope · solarsystemscope.com/textures · CC BY 4.0

The moon in IKANDY's erosion sky uses a Solar System Scope texture (modified: downscaled and resampled).

IKANDY and the ikandy.app website use the following typefaces under the SIL Open Font License. The website self-hosts all font files — no visitor data is sent to a font CDN:

Big Shoulders — Patric King Archivo — Omnibus-Type Martian Mono — Evil Martians VT323 — Peter Hull Press Start 2P — CodeMan38 Limelight — Sorkin Type Cinzel — Natanael Gama Bebas Neue — Ryoichi Tsunekawa DM Sans — Colophon Foundry Space Mono — Colophon Foundry
IKANDY Arcade (Website)

Webamp

Jordan Eldredge · github.com/captbaritone/webamp · MIT license

The arcade's IKAMP music player is built on Webamp, a browser re-implementation of a classic skinnable audio player. IKANDY ships the pinned library locally with its own original skin. The full MIT notice is retained alongside the bundle.

skifree.js

Dan Hough (@basicallydan) · github.com/basicallydan/skifree.js · MIT license (© 2013 Daniel Hough)

The arcade's Powder ski game is a patched port of skifree.js. The bundle includes Hammer.JS (© 2011–2017 Jorik Tangelder, MIT license) and Mousetrap (Craig Campbell, Apache License 2.0). The full skifree.js, Hammer.js, and Mousetrap license texts ship alongside the game.

IKAMP Synthwave Playlist

Five CC0 tracks from OpenGameArt.org

“Synth Type” by G_P; “Space Adventure” by MintoDog; “Space City” by MintoDog; “DJ Synth Wave / Funk” by Pro Sensory / Alex McCulloch; and “Calm Ambient 2 (Synthwave 15k)” by The Cynic Project. Each source is published under CC0; these credits are included with appreciation. The verification record includes verified source and shipped-file SHA-256 hashes.

Attribution corrections & takedown requests: If you believe any attribution is incorrect, incomplete, or if you are a rights holder who wishes to discuss the use of your work in IKANDY, please contact support@ikandy.app. We will respond promptly.