David Aerne

As an interaction developer with visual skills, I explore ways to melt code and design, while raising the quality and creative freedom of both.

GitHub 186 repos 1.1k followers

Explained projects

Yet to be explained

skill.color-expert
Agent skill for color science expertise. Many references covering color spaces, accessibility (APCA, WCAG), palette generation, pigment mixing, and historical color theory. Works with Claude Code, Codex, Cursor, Copilot & others.
605 stars
Explain
dittoTones
Transform any color into a full palette by copying the perceptual DNA of Tailwind, Radix, and other design systems
TypeScript158 stars
Explain
design-book
Reactive TypeScript design token system for defining primitives, semantic roles, and derived UI tokens with dependency tracking and multi-format export.
TypeScript98 stars
Explain
token-beam
A tool-agnostic design token synchronization system
TypeScript29 stars
Explain
cusphanger
OKLCH palette generator with intuitive parameters (sequential, diverging, qualitative) — gamut-relative saturation, cusp/shared chroma modes, in-gamut by construction.
TypeScript18 stars
Explain
pickyPalette
TypeScript11 stars
Explain
nutelch
Chroma relative to the gamut shell (cusp) in OKLCH/LCH/LCHuv/HCT. Dependency-free, LUT-backed.
TypeScript8 stars
Explain
ray-color
Generative color palettes from a raytraced scene. Edit the conditions, not the colors
TypeScript7 stars
Explain
bouffont
Generative puffy lettering as SVG: grow the letters of any font into one coherent hand.
JavaScript5 stars
Explain
colornames-oklab
4444 color names, blue-noise sampled over the Rec2020 gamut in OKLab — evenly distributed perceptually, tiered by gamut (sRGB / P3 / Rec2020)
JavaScript5 stars
Explain
kurvenlineal
Fit a bezier easing (quadratic or cubic) to an existing size scale — the curve owns the scale
TypeScript3 stars
Explain
color-names-timeline
Scrub through the history of the color-names dataset — a GPU (cosmos.gl) time visualization
JavaScript3 stars
Explain
astrobot
A Claude Code plugin that gives each Claude model a permanent astrological identity (LLM-chosen sign + color) and subtly tints its tone day by day.
JavaScript3 stars
Explain
palette-generation
Lecture deck: palette generation — CMU 60-212
HTML1 stars
Explain