Overview

A quick grid of all work thumbnails, ordered by time.

BioGlyph: Face to One-Line Drawing

BioGlyph: Face to One-Line Drawing

Jun 2026

[WIP] BlinkBlink

[WIP] BlinkBlink

Jun 2026

Charming Pretext

Charming Pretext

Apr 2026

Bridget Lines

Bridget Lines

Feb 2026

Bridget Arcs

Bridget Arcs

Feb 2026

Bridget Circles

Bridget Circles

Feb 2026

Image Warping

Image Warping

Feb 2026

Video Warping

Video Warping

Feb 2026

Genuary 26 / 27 - Animated Fractal Tree

Genuary 26 / 27 - Animated Fractal Tree

Jan 2026

Genuary 26 / 28 - Slider Race

Genuary 26 / 28 - Slider Race

Jan 2026

Genuary 26 / 20 - One-line Snake

Genuary 26 / 20 - One-line Snake

Jan 2026

Genuary 26 / 23 - Sphere Path

Genuary 26 / 23 - Sphere Path

Jan 2026

Genuary 26 / 24 - Dithering Globe

Genuary 26 / 24 - Dithering Globe

Jan 2026

Graphbook

Graphbook

Jan 2026

Genuary 26 / 18 - A Traveling Snake

Genuary 26 / 18 - A Traveling Snake

Jan 2026

Genuary 26 / 15 - Snake Time

Genuary 26 / 15 - Snake Time

Jan 2026

Genuary 26 / 17 - Falling Pattern Cards

Genuary 26 / 17 - Falling Pattern Cards

Jan 2026

Genuary 26 / 19 - Water Waves

Genuary 26 / 19 - Water Waves

Jan 2026

Genuary 26 / 16 - Sorting Visualization

Genuary 26 / 16 - Sorting Visualization

Jan 2026

Genuary 26 / 14 - Fit Text to Image

Genuary 26 / 14 - Fit Text to Image

Jan 2026

Genuary 26 / 11 - Heart by Heart ❤️

Genuary 26 / 11 - Heart by Heart ❤️

Jan 2026

Genuary 26 / 13 - Progressive Self Portrait

Genuary 26 / 13 - Progressive Self Portrait

Jan 2026

Genuary 26 / 5 - Progressive Genuary

Genuary 26 / 5 - Progressive Genuary

Jan 2026

Genuary 26 / 9 - Cellular Architecture

Genuary 26 / 9 - Cellular Architecture

Jan 2026

Genuary 26 / 10 - Chinese Polar Clock

Genuary 26 / 10 - Chinese Polar Clock

Jan 2026

Genuary 26 / 8 - A City of Rainbow People

Genuary 26 / 8 - A City of Rainbow People

Jan 2026

Genuary 26 / 2 - Star 🌟

Genuary 26 / 2 - Star 🌟

Jan 2026

Genuary 26 / 7 - Wuxing Partitions

Genuary 26 / 7 - Wuxing Partitions

Jan 2026

Genuary 26 / 6 - Yin-Yang Picasso Animals Sketches

Genuary 26 / 6 - Yin-Yang Picasso Animals Sketches

Jan 2026

Genuary 26 / 3 - FibonacciGirl With a Pearl Earring

Genuary 26 / 3 - FibonacciGirl With a Pearl Earring

Jan 2026

Genuary 26 / 4 - Venus MST

Genuary 26 / 4 - Venus MST

Jan 2026

Genuary 26 / 1 马到成功

Genuary 26 / 1 马到成功

Jan 2026

Genuary 2026

Genuary 2026

Jan 2026

GType

GType

Dec 2025

{Mountains, Trees, Names}*

{Mountains, Trees, Names}*

Dec 2025

Recho Multiples: Creative Coding is a Search Problem

Recho Multiples: Creative Coding is a Search Problem

Dec 2025

Soft Time

Soft Time

Dec 2025

Recho Melody: Writing Code like a Pianist

Recho Melody: Writing Code like a Pianist

Dec 2025

CG HW 7: Robotic Arm

CG HW 7: Robotic Arm

Nov 2025

CG HW 05: World Airports Delaunay

CG HW 05: World Airports Delaunay

Nov 2025

CG HW 06: World Flight Paths Voronoi

CG HW 06: World Flight Paths Voronoi

Nov 2025

CG HW 03: Golden Tree

CG HW 03: Golden Tree

Nov 2025

CG HW 04: Twisted Porcelain

CG HW 04: Twisted Porcelain

Nov 2025

CG HW 02: DLA

CG HW 02: DLA

Nov 2025

HAP: Hackers and Painters

HAP: Hackers and Painters

Nov 2025

AClocks

AClocks

Oct 2025

CG HW 01: Beesandbombs

CG HW 01: Beesandbombs

Oct 2025

Tree Beeswarm

Tree Beeswarm

Oct 2025

Recho Notebook: A Lighter Way to Code with Creativity

Recho Notebook: A Lighter Way to Code with Creativity

Oct 2025

Tree Grid

Tree Grid

Aug 2025

Tree Cloud

Tree Cloud

Aug 2025

Charming V2

Charming V2

Jul 2025

APack: Alphabet Packing Writing System

APack: Alphabet Packing Writing System

May 2025

Find Trees in Names: What if We are Trees?

Find Trees in Names: What if We are Trees?

May 2025

M2: Animate a Static Image based on Malus' Law of Polarization

M2: Animate a Static Image based on Malus' Law of Polarization

May 2025

Mandelbrot Set Exploration: Animation, Interaction with Canvas and WebGL

Mandelbrot Set Exploration: Animation, Interaction with Canvas and WebGL

Apr 2025

Jiggly Wordle

Jiggly Wordle

Apr 2025

Chart Music Lab

Chart Music Lab

Apr 2025

Ping Pong Table Monitor: What's the Play Pattern of ITP Floor?

Ping Pong Table Monitor: What's the Play Pattern of ITP Floor?

Apr 2025

Pixel Poetry

Pixel Poetry

Mar 2025

Rolling Mail Service: A Moving Mailbox with Warm Message

Rolling Mail Service: A Moving Mailbox with Warm Message

Dec 2024

Frankenstein I: My First Tiny Robotic Arm Project

Frankenstein I: My First Tiny Robotic Arm Project

Nov 2024

Markdown Genji: The Interactive Markdown Extension

Markdown Genji: The Interactive Markdown Extension

Mar 2024

Genuary 24 / 25 - Painter

Genuary 24 / 25 - Painter

Jan 2024

Genuary 24 / 19 - Green Growth

Genuary 24 / 19 - Green Growth

Jan 2024

Genuary 24 / 18 - Shapes with Pattern

Genuary 24 / 18 - Shapes with Pattern

Jan 2024

Genuary 24 / 17 - Islamic Avatar

Genuary 24 / 17 - Islamic Avatar

Jan 2024

Genuary 24 / 16 - Waltz of Circles

Genuary 24 / 16 - Waltz of Circles

Jan 2024

Genuary 24 / 9 - On Fire 🔥

Genuary 24 / 9 - On Fire 🔥

Jan 2024

Genuary 24 / 1 - Noise Swirl

Genuary 24 / 1 - Noise Swirl

Jan 2024

Charming V1

Charming V1

Dec 2023

AntV G2: Create Charts with One Line of Code

AntV G2: Create Charts with One Line of Code

Mar 2023

ColorFu: An Online Editor for Expressive Wallpapers

ColorFu: An Online Editor for Expressive Wallpapers

Dec 2021

Sparrow: The Tiny Plot Library Based on the GoG for Learning Purpose

Sparrow: The Tiny Plot Library Based on the GoG for Learning Purpose

Dec 2021

AntV Coord: Toolkit for Apply Point Transformations for Vectors

AntV Coord: Toolkit for Apply Point Transformations for Vectors

May 2021

AntV Scale: Toolkit for Mapping Abstract Data into Visual Representation

AntV Scale: Toolkit for Mapping Abstract Data into Visual Representation

Mar 2021

PyCharming: Character Terminal Art Programming

PyCharming: Character Terminal Art Programming

Dec 2020

CA2: A Visual Analytics System for Comparing and Matching Subgraphs of Large Graph

CA2: A Visual Analytics System for Comparing and Matching Subgraphs of Large Graph

Jul 2020

Swings of Life

Swings of Life

Jun 2020

nCovis: A Visual Analysis Platform for the Impact of COVID-19 on Public Opinion and News

nCovis: A Visual Analysis Platform for the Impact of COVID-19 on Public Opinion and News

May 2020

Gossip: A Cool Way for Storytelling

Gossip: A Cool Way for Storytelling

Mar 2020

CICSC Vis: A Visual Analysis Platform for Spatial-Temporal Data

CICSC Vis: A Visual Analysis Platform for Spatial-Temporal Data

Jul 2019

Shapes

Shapes

May 2019

SineWavesPlus

SineWavesPlus

May 2019

StarCloud

StarCloud

Apr 2019

Hello Processing: A Collection of Processing Sketches at the Beginning

Hello Processing: A Collection of Processing Sketches at the Beginning

Feb 2019

Parallel Universe

Parallel Universe

Jan 2019

ParticleDance

ParticleDance

Dec 2018

The Great Wall

The Great Wall

Nov 2018

Purple Rain

Purple Rain

Nov 2018

Fire Tree

Fire Tree

Nov 2018

Wave

Wave

Oct 2018

Clutch Shot

Clutch Shot

Oct 2018

Products

Products I build and ship for productivity, education, and creativity.

Graphbook

p5.js · Notebook · Creative Coding · 2026

Graphbook is browser-based notebooks for p5.js to learn, teach, and share sketches with others.

Graphbook

Gossip: A Cool Way for Storytelling

React · Presentation Tools · HCI · Interface Design · 2020

An open-source platform for quickly authoring and delivering concise, impressive presentations.

Gossip: A Cool Way for Storytelling

Creative Tools

Open-source projects that help people create, code, explore, or build.

Charming Pretext

2026

Pretext layer for Charming.js.

Charming Pretext

Recho Multiples: Creative Coding is a Search Problem

Code Environment · Creative Coding · Version Control · Parameter Exploration · Visualization · WebGL · p5.js · 2025

An exploratory code environment for creative coding that enables parameter variations inspired by small multiples in data visualization.

Recho Multiples: Creative Coding is a Search Problem

Recho Melody: Writing Code like a Pianist

Code Environment · Live Coding · Creative Coding · Music Interface · Performance · D3.js · p5.js · 2025

A live coding piano editor that merges code, music and visuals into one performative instrument.

Recho Melody: Writing Code like a Pianist

HAP: Hackers and Painters

Creative Coding · WebGL · Algorithms · Data Visualization · 2025

A WebGL-powered platform that transforms images into generative artwork by visualizing classic algorithms.

HAP: Hackers and Painters

Charming V2

2025

Charming.js API v2.

Charming V2

Charming V1

2023

Charming.js creative coding library.

Charming V1

Computational Expression

Open-source projects that transform language, symbols, names, or code into new visual / structural forms.

BioGlyph: Face to One-Line Drawing

Generative Art · Computer Vision · MediaPipe · Interactive Art · ITP Spring Show 2026 · 2026

An interactive web application that creates a one-line drawing of your face.

BioGlyph: Face to One-Line Drawing

Genuary 2026

Generative Art · Creative Coding · Observable · 2026

A collection of generative art pieces from daily learning and experiments based on Genuary prompts.

Genuary 2026

GType

2025

Typography tools for generative graphics.

GType

Pixel Poetry

2025

Pixel poetry on Observable.

Pixel Poetry

Frankenstein I: My First Tiny Robotic Arm Project

Physical Computing · Arduino · Robotics · Interactive Systems · 2024

A simple robotic arm with a smiling face and a digital twin, built from discarded materials.

Frankenstein I: My First Tiny Robotic Arm Project

Swings of Life

2020

Swings of life interactive piece.

Swings of Life

Information & Visualization

Open-source projects about understanding data, systems, or information visually.

Soft Time

2025

Soft time visualization.

Soft Time

Jiggly Wordle

2025

A jiggly Wordle variant.

Jiggly Wordle

Chart Music Lab

2025

Turning charts into music.

Chart Music Lab

CICSC Vis: A Visual Analysis Platform for Spatial-Temporal Data

Data Visualization · Visual Analytics · Spatial-Temporal Data · Platform · 2019

My journey starts here.

CICSC Vis: A Visual Analysis Platform for Spatial-Temporal Data

Pieces

Smaller works and experiments — generative sketches, data visualization studies, geographic patterns, Processing pieces, and shader play.

Bridget Lines

Bridget Lines

Feb 2026 · p5.js

Bridget Arcs

Bridget Arcs

Feb 2026 · p5.js

Bridget Circles

Bridget Circles

Feb 2026 · p5.js

Image Warping

Image Warping

Feb 2026 · p5.js

Video Warping

Video Warping

Feb 2026 · p5.js

Genuary 26 / 27 - Animated Fractal Tree

Genuary 26 / 27 - Animated Fractal Tree

Jan 2026 · D3.js

Genuary 26 / 28 - Slider Race

Genuary 26 / 28 - Slider Race

Jan 2026 · D3.js

Genuary 26 / 20 - One-line Snake

Genuary 26 / 20 - One-line Snake

Jan 2026 · Observable Plot

Genuary 26 / 23 - Sphere Path

Genuary 26 / 23 - Sphere Path

Jan 2026 · Three.js

Genuary 26 / 24 - Dithering Globe

Genuary 26 / 24 - Dithering Globe

Jan 2026 · Canvas

Genuary 26 / 18 - A Traveling Snake

Genuary 26 / 18 - A Traveling Snake

Jan 2026 · Observable Plot

Genuary 26 / 15 - Snake Time

Genuary 26 / 15 - Snake Time

Jan 2026 · D3.js

Genuary 26 / 17 - Falling Pattern Cards

Genuary 26 / 17 - Falling Pattern Cards

Jan 2026 · Canvas

Genuary 26 / 19 - Water Waves

Genuary 26 / 19 - Water Waves

Jan 2026 · Observable Plot

Genuary 26 / 16 - Sorting Visualization

Genuary 26 / 16 - Sorting Visualization

Jan 2026 · Observable Plot

Genuary 26 / 14 - Fit Text to Image

Genuary 26 / 14 - Fit Text to Image

Jan 2026 · D3.js

Genuary 26 / 11 - Heart by Heart ❤️

Genuary 26 / 11 - Heart by Heart ❤️

Jan 2026 · HTML

Genuary 26 / 13 - Progressive Self Portrait

Genuary 26 / 13 - Progressive Self Portrait

Jan 2026 · D3.js

Genuary 26 / 5 - Progressive Genuary

Genuary 26 / 5 - Progressive Genuary

Jan 2026 · Canvas

Genuary 26 / 9 - Cellular Architecture

Genuary 26 / 9 - Cellular Architecture

Jan 2026 · Three.js

Genuary 26 / 10 - Chinese Polar Clock

Genuary 26 / 10 - Chinese Polar Clock

Jan 2026 · D3.js

Genuary 26 / 8 - A City of Rainbow People

Genuary 26 / 8 - A City of Rainbow People

Jan 2026 · Canvas

Genuary 26 / 2 - Star 🌟

Genuary 26 / 2 - Star 🌟

Jan 2026 · WebGL

Genuary 26 / 7 - Wuxing Partitions

Genuary 26 / 7 - Wuxing Partitions

Jan 2026 · D3.js

Genuary 26 / 6 - Yin-Yang Picasso Animals Sketches

Genuary 26 / 6 - Yin-Yang Picasso Animals Sketches

Jan 2026 · Canvas

Genuary 26 / 3 - FibonacciGirl With a Pearl Earring

Genuary 26 / 3 - FibonacciGirl With a Pearl Earring

Jan 2026 · Canvas

Genuary 26 / 4 - Venus MST

Genuary 26 / 4 - Venus MST

Jan 2026 · Canvas

Genuary 26 / 1 马到成功

Genuary 26 / 1 马到成功

Jan 2026 · D3.js

CG HW 7: Robotic Arm

CG HW 7: Robotic Arm

Nov 2025 · WebGL

CG HW 05: World Airports Delaunay

CG HW 05: World Airports Delaunay

Nov 2025 · WebGL

CG HW 06: World Flight Paths Voronoi

CG HW 06: World Flight Paths Voronoi

Nov 2025 · WebGL · D3.js

CG HW 03: Golden Tree

CG HW 03: Golden Tree

Nov 2025 · WebGL

CG HW 04: Twisted Porcelain

CG HW 04: Twisted Porcelain

Nov 2025 · WebGL

CG HW 02: DLA

CG HW 02: DLA

Nov 2025 · WebGL

AClocks

AClocks

Oct 2025 · APack

CG HW 01: Beesandbombs

CG HW 01: Beesandbombs

Oct 2025 · WebGL

Tree Beeswarm

Tree Beeswarm

Oct 2025 · Observable Plot

Tree Grid

Tree Grid

Aug 2025 · D3.js

Tree Cloud

Tree Cloud

Aug 2025 · D3.js

Genuary 24 / 25 - Painter

Genuary 24 / 25 - Painter

Jan 2024 · Charming.js

Genuary 24 / 19 - Green Growth

Genuary 24 / 19 - Green Growth

Jan 2024 · Charming.js

Genuary 24 / 18 - Shapes with Pattern

Genuary 24 / 18 - Shapes with Pattern

Jan 2024 · Charming.js

Genuary 24 / 17 - Islamic Avatar

Genuary 24 / 17 - Islamic Avatar

Jan 2024 · Charming.js

Genuary 24 / 16 - Waltz of Circles

Genuary 24 / 16 - Waltz of Circles

Jan 2024 · Charming.js

Genuary 24 / 9 - On Fire 🔥

Genuary 24 / 9 - On Fire 🔥

Jan 2024 · Charming.js

Genuary 24 / 1 - Noise Swirl

Genuary 24 / 1 - Noise Swirl

Jan 2024 · Charming.js

Shapes

Shapes

May 2019 · Processing

SineWavesPlus

SineWavesPlus

May 2019 · Processing

StarCloud

StarCloud

Apr 2019 · Processing

Parallel Universe

Parallel Universe

Jan 2019 · Processing

ParticleDance

ParticleDance

Dec 2018 · Processing

The Great Wall

The Great Wall

Nov 2018 · Processing

Purple Rain

Purple Rain

Nov 2018 · Processing

Fire Tree

Fire Tree

Nov 2018 · Processing

Wave

Wave

Oct 2018 · Processing

Clutch Shot

Clutch Shot

Oct 2018 · Processing