pure-data
egui_node_graph
pure-data | egui_node_graph | |
---|---|---|
8 | 6 | |
1,463 | 688 | |
2.0% | - | |
9.7 | 4.6 | |
3 days ago | about 1 month ago | |
C | Rust | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
pure-data
-
pure-data VS midica - a user suggested alternative
2 projects | 12 Aug 2023
-
How to get in touch with maintainers in PD - Running PD on phone
Report bugs on the pd github https://github.com/pure-data/pure-data
-
A brief interview with Tcl creator John Ousterhout
You might be interested in clicking through the puredata source code.
https://github.com/pure-data/pure-data
-
Pure Data as a plugin, with a new GUI
> The other advantage is because these things were implemented in the 80s
Pd was developed in the mid 90s
> they are very computationally efficient
Not as efficient as it could be, though. For example, instead of proper SIMD instructions, the DSP perform routines only use manual loop unrolling, praying that the compiler will auto-vectorize it.
Finally, everything is single-threaded, leaving lots of performance on the table. FWIW, I have a PR for an asynchronous task API (https://github.com/pure-data/pure-data/pull/1357) and also a branch for multi-threaded DSP (https://github.com/Spacechild1/pure-data/tree/multi-threadin...).
-
Pure Data: an open source visual language for multimedia
> Any criticism or unwelcome suggestions are treated as an insult to Miller Puckette and the proponent is attacked, ignored, or advised to implement it themselves (ie to go away and not come back).
I don't think this holds for the general case, but there a certainly a few users caught up in Stockholm Syndrome :-) I can assure you that the developer team (which I am a part of) is very well aware of Pd's limitations and problems. Pd has seen quite significant UX improvements over the last few years, but the pace of development is very slow. Anyway, if you have specific criticism, suggestions or feature requests, feel free to open a ticket on GitHub: https://github.com/pure-data/pure-data.
As a side note, the minimalistic GUI itself won't change since it is an intentional design decision by Miller, but there is some effort to abstract the core/GUI communication to allow alternative GUI implementations. (Personally, I really dislike the current Tcl/Tk GUI - not because it's minimalistic, but because it's slow and buggy.)
> and idiosyncratic terminology (eg PD refers to module connectors as 'patch cords' just like on an analog modular synthesizer or mixer, but what synth people commonly call a pulse or a trigger is a 'bang' in PD).
Pd's 'bang' belongs to the control/event domain, you can't really compare it to trigger/pulse in modular synthesizers. (FWIW, there are several Pd externals that implement audio-rate triggers.)
> You can make it do anything, but unless you already have a very specific goals you will spend most of the time reinventing wheels in parameter space.
That's a fair point. It's important for people to understand that Pd vanilla is really a programming environment with only a minimal set of built-in objects that allow you to build higher-level abstractions. You definitely need a set of "abstractions" or libraries to be productive. Fortunately, there are many existing Pd libraries and they can be easily installed with Pd's package manager "Deken". The most extensive one is "ELSE" with nearly 500 objects, containing everything from band-limited ocillators, filters, sequencers, GUIs, etc. Personally, I have my own collection of abstractions that I made over the last years.
That being said, I would agree that you should always pick the right tool for the job. Just as you wouldn't write your website in C, you wouldn't pick Pd for typical EDM stuff (unless you have a very good reason). But for prototyping and experimental electronics it's a fantastic tool, I think.
- Implementing Cosine in C from Scratch
- [P] Pure Data patch learning and automation
egui_node_graph
-
Creating and (partially) running execution graphs, somewhat similar to make?
I want the DAG to be explainable so to handle type safety ( think that's what you're getting at?) in a user friendly way, I've been looking into using this library to draw the DAG interactively, save this to disk, and then I will then consume this in a macro to actually write the final executable.
-
Nodium. Rust flow-oriented programming language.
Did you consider to use egui_node_graph ?
-
Equivalent of ReactFlow for Rust
I was looking for something similar and found https://github.com/setzer22/egui_node_graph
- Pure Data as a plugin, with a new GUI
-
Why do you waste so much time on the internet
Gankra's work on a useful rust memory model is both fascinating and useful: https://twitter.com/Gankra_/status/1509335163045650436
This tool to convert low-complexity rust tests to proofs is interesting and something I'm glad I know exists: https://model-checking.github.io/kani-verifier-blog/2022/05/...
I'm using this code I found out about via reddit in a side project, probably less interesting to you though: https://github.com/setzer22/egui_node_graph
(Warning, videos from here on out):
Cool product demo of a futuristic debugger: https://www.hytradboi.com/2022/debugging-by-querying-a-datab...
These people also have a cool demo of splitting a single program across two different computers (frontend and backend webserver in their case). Maybe a bit less convincing than the previous one, but something I intend to watch: https://www.hytradboi.com/2022/uis-are-streaming-dags
These people have some really cool work on automatically solving physics problems (just linking to one of their talks as an example): https://www.youtube.com/watch?v=WHhDgxkiR9c
- [Media] A complete overhaul of Blackjack's 3d viewport with custom wgpu drawing
What are some alternatives?
supercollider - An audio server, programming language, and IDE for sound synthesis and algorithmic composition.
Fetcher - A chrome extension which fetches your favourite feeds, so you don't have to.
plugdata - Pure Data as a plugin, with a new GUI
nodium - Nodium is an easy-to-use data analysis and automation platform using Rust with a visual node-based interface. It includes a plugin browser for downloading extensions, making it versatile for a wide range of data manipulation tasks. No coding experience required.
PureeData - PuréeData is a browser-based GUI interface for a remote PureData server, allowing real-time collaborative patching for anyone, anywhere.
LeechBlockNG - LeechBlock NG (Next Generation) for Firefox is a simple productivity tool designed to block those time-wasting sites that can suck the life out of your working day. All you need to do is specify which sites to block and when to block them.
wefx - Basic WASM graphics package to draw to an HTML Canvas using C. In the style of the gfx library
Camomile - An audio plugin with Pure Data embedded that allows to load and to control patches
musl - unofficial musl mirror git://git.musl-libc.org/musl
score - ossia score, an interactive sequencer for the intermedia arts
v7unix - Version 7 Unix for a POSIX world
ossdatabase - Source for ossdatabase.com