A pure Java implementation of Flow-based Programming (FBP).
Data-flow programming is aesthetically pleasing, greatly reduces the chance of syntax error, and empowering for people that are not fluent in the archaic syntax of text-only languages.
- Nodes are not directed or forced to run via triggers. There is little danger of large networks overflowing the stack. They could be run in parallel.
- Folding: Collapse a subgraph down to a single Node with Fold and reverse with Unfold
- Convenient built-in nodes for basic math and reporting.
- Unit tests for everything! If it can be tested, we shall!
- The editor has written in Java Swing. The main executable class is
com.marginallyclever.donatello.Donatello
. - While running the Swing editor you can also access Swing-only nodes like
LoadImage
andPrintImage
. PrintImage results will appear in the background of the node editor panel. - A ~/Donatello/ folder contains the application log file.
- A ~/Donatello/extensions/ folder contains 3rd party plugins. Add new Nodes or write your own.
- Download the latest source code from https://github.com/MarginallyClever/NodeGraphCore/
- Use your favorite IDE to import the Maven project.
- Use Maven to "install" the project. It will now be available as a local dependency in your other projects.
./src/test/java/com/marginallyclever/nodegraphcore has unit tests, which are also examples of how to use the API.
- Please see the Javadoc with the full API for Core and Swing.
- Please see guide for how to Contribute
- The Official webpage!
- Join the Discord channel and make new friends.