bolt V1.0 NOW AVAILABLE

Aura: Let your content radiate

A high-performance C++ library for extracting prominent colors. Now available on the web via PHP extensions and WebAssembly.

Demo image
cloud_upload

Click or drop to replace

PNG, JPG, WebP · max 20 MB · processed server-side, not stored

Pick your poison

One C++ implementation, exposed through a C API, bound to PHP and compiled to WebAssembly.

memory

C++ Core

A C++ reimplementation of Google's Palette algorithm. Analyzes the pixel color distribution and returns up to six named swatches via a plain C API.

check_circle Image size independent heap usage
check_circle Google Palette algorithm
cloud

PHP Extension

Native C binding for PHP 8.1+. Pass raw RGBA bytes, get a typed palette object back instantly.

check_circle Installable via PIE
check_circle Works with any framework
globe_2_cancel

WebAssembly

The C++ core compiles to WebAssembly via Emscripten. The module builds and runs; the raw exports are callable, but convenient JS wrappers are still in progress.

check_circle WASM module builds
schedule JS/TS wrappers — planned

Get it

Both libraries are MIT licensed and hosted on GitLab. There's no separate documentation site, the code is small enough that the READMEs cover everything.

$rgba = imagickToRgba('photo.jpg');
$palette = Aura\Palette::generate($rgba);

// Six typed swatches
$palette->vibrant->color->r; // 0–255
$palette->vibrant->hsl->h; // 0–360
$palette->vibrant->is_text_white; // bool