Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

An Introduction to Pure Data

2012-2013 Dan Wilcox


With various contributions from around the web, notably:

What is Pure Data?

Pure Data is an open source graphical patching environment for audio and multimedia similar to Max/MSP. It was created by Miller Puckette (who also created Max) in 1996 and is now a community project with contributors from around the world.

It's website is and you can download it from

Conceptually, "patching" refers to programming by connecting little boxes together with "patch cords". Boxes may have inlets and outlets and perform some sort of action on incoming data with the result sent out of an outlet or number of outlets. Data is sent between boxes through the connected patch cords from outlets to inlets.

There are a few versions of Pure Data ("Pd" for short) floating around, so it's good to know the distinctions between them:

  • Pd-vanilla: the core version by Miller Puckette
  • Pd-extended: the community version with additional libraries and functionality (this is the one most people use)
  • libpd: the Pd-vanilla DSP core in an embeddable C library (so developers can run Pd patches inside their own apps)

What do I use it for?

A few projects using Pd-Extended

A few projects using libpd

Where do I start?

Well, you can clone or download a zip of this repository and start looking into the example patches, but I'd recommend you "Read the Manual" first: Pure Data Start Here

There are also a few books online, see Pure Data Books About Pd

If you run into specific issues or have general questions, see the Pure Data FAQ

Other Useful Links

Downloading this Repo as a Zip File fom GitHub

If you want a zip file, don't download it from GitHub. (See below.) Grab the official release here:

You download this repo as a zip using the "Download ZIP" button, however, currently Github does not include git submodules within the zip file, so you will also need to download the following patch libraries and extract their contents into the externals folder:

IE: downloading and extracting "rjlib" as a zip gives you a "rjlib-master" folder. Copy the contents of "rjlin-master" inside the "externals/rjlib" folder.

Cloning this Repo with Git

If you're cloning this repo, make sure to checkout the rc-patches & rjlib external submodules:

git submodule init
git submodule update


An intro to Pure Data via example.






No releases published


No packages published