Hello, React Native Developers

I'm William, maintainer of React Native WebGPU and React Native Skia. I recently set out to build a new grade of 2D primitives for Web and Native: Redraw.

An initiative like Redraw wouldn't have been possible without your support. As a subscriber, you get access to the Redraw technical preview, and you help sustain the open-source work I do on React Native Skia and WebGPU.

Redraw

Redraw is a new library built on top of WebGPU. Its goal is to deliver a new grade of 2D primitives: variable stroke width, geometry-aware shading, and advanced vector feathering. It runs on both Web and Native.

Variable Strokes

Stroke width and color are TypeScript functions, compiled and executed on the GPU. They receive the path's geometry as input, giving you full control to create dynamic, geometry-aware strokes.

Color Along Path

The same idea applies to color. Fills and strokes are driven by TypeScript functions running on the GPU, so you can paint along a path based on its geometry: gradients that follow curvature, hue that tracks distance, and more.

Vector Feathering

Soft, distance-based blur computed directly from vector geometry. No rasterization, no post-process pass: just feathered layers composed in a single shader.

The story

I'm William, from the "Can it be done in React Native?" YouTube series. The series began at a time when the graphics primitives in React Native were crude and limited. Those limitations represented a fun challenge: the bigger the obstacle, the bigger the fun. Eventually we needed to go from playing with the obstacle to overcoming it completely. With Christian Falch, we brought Skia to React Native. It has since enabled developers to build award-winning user experiences.

While improving the library, I started React Native WebGPU to bring 3D graphics, and general-purpose GPU computation, to React Native. Skia and WebGPU are complementary: Skia can run on top of WebGPU, giving React Native the same graphics foundation as Google Chrome.

Until now, we've been mirroring the Web. Recently, we set out to go further and build new 2D primitives for both Web and Native: project Redraw. The goal is to unlock the capabilities I kept missing in the Web's graphics APIs, things like variable stroke width, gradients along paths, and vector feathering.

All of this is only possible thanks to your support, which sustains the open-source work and puts the Redraw preview in your hands. Thank you.