WIP: Bairui Su

Sep 2025

I'm an second year student at NYU ITP (Interactive Telecommunications Program) who is interested in data visualization, creative coding, and interactive systems.

I used to be a software engineer (data visualization developer) at Ant Group, where I led the development of AntV G2 5.0, an open source JavaScript framework for interactive and exploratory visualization.

Email me at subairui@icloud.com or find me on: Github, Observable, Instagram, Medium, LinkedIn, Juejin, and OpenProcessing.

APack: Alphabet Packing Writing System
Name2Tree: Find the Tree in Your Name
M2: Animate a Static Image based on Malus' Law of Polarization
Charming: A Lightweight Data-Driven API for SVG, Canvas and HTML
Rolling Mail Service: A Moving Mailbox with Warm Message
Markdown Genji: The Interactive Markdown Extension
AntV G2: The Interactive and exploratory Visualization Grammar
ColorFu: An Online Editor for Expressive Wallpapers
PyCharming: Character Terminal Art Programming
HAP: Turn your Avatar into Artwork via Algorithm Visualization and AI
Gossip: An Online Platform for Creative Presentation
gh2: A Creative Coding Language for ASCII Art and Poetic Form
Infinite Landscape: Procedurally Generated with Primitives and Colors
Mandelbrot Set Exploration: Animation, Interaction with Canvas and WebGL
λ Poem: Composing Poems with Chinese Reduplicated Characters
Commits2Music: GitHub Melody Sequencer
Ping Pong Table Monitor: What's the Play Pattern of ITP Floor?
Musical Eye: A Radical Music Mixer
Jiggly Symbols: A City of Symbols
Image2Poem: Generate Poems from Images
Soundgraph: A Interactive Composition Tool
EchoX: A lightweight JavaScript framework for small projects
Simulate A Robotic Arm with Three.js
Frankenstein: My First Tiny Robotic Arm Project
g2-react: A Lightweight React Component for @antv/g2
g2-ssr-node: A Tool for Server-Side Rendering G2 in Node.js
d3-treemap-flex: A Tiling Method for d3-treemap to Plot Block Diagrams
Ccomp: The Data-Driven API for Canvas and WebGL
Sparrow: The Tiny Plot Library Based on the GoG for Learning Purpose
AntV Coord: Toolkit for Apply Point Transformations for Vectors
AntV Scale: Toolkit for Mapping Abstract Data into Visual Representation
CA2: A Visual Analytics System for Comparing and Matching Subgraphs of Large Graph
Life Swings: A Three.js Game for "Building Game of Life"
nCovis: A Visual Analysis Platform for the Impact of COVID-19 on Public Opinion and News
CICSC Vis: A Visual Analysis Platform for Spatial-Temporal Data
PSketches: A Collection of Processing Sketches at the Beginning
Hello, Observable Notebook 2.0
What are the differences between '='', '==' and '===' in JavaScript?
What does 'return' mean in JavaScript?
IMDB Movies: An Observable Framework Dashboard for Top250 IMDB Movies
ITP Spring Show 2025: Find the Tree in Your Name
ITP Winter Show 2024: Rolling Mail Service

Work

Projects

Apr 2025
gh2: A Creative Coding Language for ASCII Art and Poetic Form

When Processing meets ASCII art and poetry.

gh2: A Creative Coding Language for ASCII Art and Poetic Form
Apr 2025
Infinite Landscape: Procedurally Generated with Primitives and Colors

{Primitives, Colors}*

Infinite Landscape: Procedurally Generated with Primitives and Colors
Apr 2025
Mandelbrot Set Exploration: Animation, Interaction with Canvas and WebGL

The beauty of fractals.

Mandelbrot Set Exploration: Animation, Interaction with Canvas and WebGL
Apr 2025
λ Poem: Composing Poems with Chinese Reduplicated Characters

Poems repeat themselves.

λ Poem: Composing Poems with Chinese Reduplicated Characters
Apr 2025
Commits2Music: GitHub Melody Sequencer

What does your GitHub sound like?

Commits2Music: GitHub Melody Sequencer
Apr 2025
Ping Pong Table Monitor: What's the Play Pattern of ITP Floor?

Always observe.

Ping Pong Table Monitor: What's the Play Pattern of ITP Floor?
Mar 2025
Musical Eye: A Radical Music Mixer

Mix music with a "eye".

Musical Eye: A Radical Music Mixer
Mar 2025
Jiggly Symbols: A City of Symbols

A simple way to jiggle.

Jiggly Symbols: A City of Symbols
Feb 2025
Image2Poem: Generate Poems from Images

Poems only the universe understands.

Image2Poem: Generate Poems from Images
Feb 2025
Soundgraph: A Interactive Composition Tool

Make streamgraph with sounds.

Soundgraph: A Interactive Composition Tool
Feb 2025
EchoX: A lightweight JavaScript framework for small projects

If we don't have React.

EchoX: A lightweight JavaScript framework for small projects
Dec 2024
Simulate A Robotic Arm with Three.js

Forward kinematics and inverse kinematics.

Simulate A Robotic Arm with Three.js
Nov 2024
Frankenstein: My First Tiny Robotic Arm Project

My first Iron man suit.

Frankenstein: My First Tiny Robotic Arm Project
Jun 2024
g2-react: A Lightweight React Component for @antv/g2

When G2 meets React.

g2-react: A Lightweight React Component for @antv/g2
Jun 2024
g2-ssr-node: A Tool for Server-Side Rendering G2 in Node.js

Charts everywhere.

g2-ssr-node: A Tool for Server-Side Rendering G2 in Node.js
May 2024
d3-treemap-flex: A Tiling Method for d3-treemap to Plot Block Diagrams

Simple and colored block diagrams.

d3-treemap-flex: A Tiling Method for d3-treemap to Plot Block Diagrams
Dec 2023
Ccomp: The Data-Driven API for Canvas and WebGL

Lodash for graphics, or D3 for computational art.

Ccomp: The Data-Driven API for Canvas and WebGL
Dec 2021
Sparrow: The Tiny Plot Library Based on the GoG for Learning Purpose

Small but complete.

Sparrow: The Tiny Plot Library Based on the GoG for Learning Purpose
May 2021
AntV Coord: Toolkit for Apply Point Transformations for Vectors

Coordinate transformation can be magical.

AntV Coord: Toolkit for Apply Point Transformations for Vectors
Mar 2021
AntV Scale: Toolkit for Mapping Abstract Data into Visual Representation

The bridge between data and pixels.

AntV Scale: Toolkit for Mapping Abstract Data into Visual Representation
Jul 2020
CA2: A Visual Analytics System for Comparing and Matching Subgraphs of Large Graph

Streamlined analysis process.

CA2: A Visual Analytics System for Comparing and Matching Subgraphs of Large Graph
Jun 2020
Life Swings: A Three.js Game for "Building Game of Life"

In the memory of John Horton Conway.

Life Swings: A Three.js Game for "Building Game of Life"
May 2020
nCovis: A Visual Analysis Platform for the Impact of COVID-19 on Public Opinion and News

What did people talk about back then?

nCovis: A Visual Analysis Platform for the Impact of COVID-19 on Public Opinion and News
Jul 2019
CICSC Vis: A Visual Analysis Platform for Spatial-Temporal Data

My journey starts here.

CICSC Vis: A Visual Analysis Platform for Spatial-Temporal Data
Feb 2019
PSketches: A Collection of Processing Sketches at the Beginning

Code can be interesting.

PSketches: A Collection of Processing Sketches at the Beginning

Posts

Exhibitions

Talks

May 2024
Auto Palette Algorithm, Industrial Design, Zhejiang University, HZ, China
Nov 2023
Visualize Asian Games 2023, Yunqi Conference, HZ, China
Nov 2023
How to Make Charts Tell Stories, AntV 1122 Conference, HZ, China
Nov 2022
First-Class Citizen in Visualization, ZaoZao Tech Talk, HZ, China
Sep 2022
G2 5.0 and its First-Class Citizen, AntV Group Tech Talk, HZ, China
Jul 2022
GraphInsight: Graph Analysis, ChinaVis 2022 Challenge, XN, China
Jul 2021
Visualize Sophie's World by AntV, AntV Group Tech Talk, HZ, China
Aug 2019
Spatial-Temporal Data Analysis, ChinaVis 2019 Challenge, CD, China

Education

2026
M.P.S. Interactive Telecommunications, New York University, USA
2020
B.E. Computer Science and Technology, Shandong University, China

Employment

2025 - Present
ml5.js Researcher, New York University, NY, USA
2025 - Present
Web App Developer, New York University, NY, USA
2021 - 2024
Software Engineer (Data Visualization Developer), Ant Group, HZ, China
Fall 2020
Software Engineer, OF Course, SH, China

Teaching

Summer 2025
Code!, Graduate Assistant, New York University, USA
Spring 2025
Code!, Graduate Assistant, New York University, USA
Fall 2024
Code!, Graduate Assistant, New York University, USA
Spring 2023
The Grammar of Graphics, Instructor, Tongji University, China
Spring 2020
Data Visualization, Teaching Assistant, Shandong University, China

Awards

Aug 2022
National 2nd prize for Graph Visualization for ChinaVis 2022 Data Challenge
Aug 2020
Honorable Mentions for Streamlined Analysis for VIS 2020 VAST Challenge
Jun 2020
National 3rd prize for 3D Game for WeChat Mini Game Competition
May 2020
National 3rd prize for Public Opinion Analysis for Alibaba's Covid-19 Competition
Aug 2019
National 2nd prize for Spatial-Temporal Analysis ChinaVis 2020 Challenge