https://github.com/clj-puredata/clj-puredata
Clojure library for generating PureData patches
https://github.com/clj-puredata/clj-puredata
clj-puredata clojure puredata
Last synced: 7 months ago
JSON representation
Clojure library for generating PureData patches
- Host: GitHub
- URL: https://github.com/clj-puredata/clj-puredata
- Owner: clj-puredata
- License: epl-1.0
- Created: 2017-12-18T19:08:04.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-06-15T21:42:13.000Z (about 5 years ago)
- Last Synced: 2025-10-19T23:45:31.687Z (9 months ago)
- Topics: clj-puredata, clojure, puredata
- Language: Clojure
- Homepage:
- Size: 353 KB
- Stars: 8
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# clj-puredata
clj-puredata is a [Clojure](https://clojure.org/) library for generating [PureData](https://puredata.info/) patches.
Visit the [Homepage](https://clj-puredata.github.io/clj-puredata/) or the [Documentation](docs/index.md) for more info.
## Quick Start
This will create a `counter.pd` patch, use it in a `usage.pd` patch, and start PureData with that patch.
Whenever you change and re-evaluate the `write-patch-reload` form, the patch will be updated in PureData as well.
```clojure
(ns example.core
(:require [clj-puredata.core :refer :all]))
(write-patch "counter.pd"
[:outlet [:float {:name 'the-float}
0
[:b [:inlet]]
[:+ 1 (other 'the-float)]]])
(write-patch-reload "usage.pd"
[:print "count"
["counter.pd"
[:msg "bang"]]])
(startup "usage.pd")
```