Online multiplayer library for p5.js

Introducing in 2 minutes!
Watch Now!

Real-time Data Sync provides a simple, imperative interface for working with shared data, automatically syncronizing your changes across all connected clients.

No Server-Side Code

Sketches using are written using only client-side JavaScript. Quickly try ideas without writing server code or setting up a back-end stack.

Perfect for Prototypes

Quickly prototype ideas for multiplayer games, real-time multi-user apps, and multi-computer art projects.

Built for Students is small and easy to learn. If you understand the basics of p5.js and JavaScript objects, you are ready to learn

Built for Teachers includes exercises and example assignments. A single, zero-config server can support all of your student's apps.

Fully Documented has a full guide, quick-start tutorials, a complete API reference, and lots of examples.

Make simple multi-player games!
Make complex multi-player games!

Show Me Some Code!

<script src=""> <script src="">
code output screengrab let pos = {x: 0, y: 0} function preload() { // connect to a p5party server partyConnect( "wss://", "hello_party" ); // tell to sync the pos object pos = partyLoadShared("pos", pos); } function setup() { createCanvas(400, 400); } function draw() { background(50); ellipse(pos.x, pos.y, 100, 100); } function mousePressed() { pos.x = mouseX; pos.y = mouseY; }

Getting Started

The quickest way to get started with is to load it from a CDN or download the latest release .

Visit the P5 Web Editor Quick Start Guide or VS Code Quick Start Guide to get started!


We welcome new contibuters. Please feel free to start a discusion, post issues, or request features. If you want to help with writing code or documentation, you can start by indicating your interest on an open issue or by creating your own.