Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Awesome flow-based programming (FBP) resources. Contributions welcome!

License

Notifications You must be signed in to change notification settings

artob/awesome-fbp

Repository files navigation

Awesome Flow-Based Programming (FBP)

Showcase

Project Summary Author Language License Updated Links
Apache NiFi Mature ETL workflow system based on FBP. @apache Java Apache 2026 :octocat: 🏠
Async-Flow Async FBP core abstractions for Tokio. @artob Rust Unlicense 2026 :octocat: 📦 📖 🏠
CppFBP Classical FBP implementation for C++. @jpaulm C, C++ Artistic 2021 :octocat:
CsharpFBP Classical FBP implementation for C#. @jpaulm C# Artistic 2021 :octocat:
Flowex FBP/ROP framework based on GenStage. @antonmi Elixir Apache 2021 :octocat: 📦 📖
Flows.rs Reusable FBP building blocks for Tokio. @artob Rust Unlicense 2026 :octocat: 📦 📖 🏠
GoFBP Classical FBP implementation for Go. @jpaulm Go Unknown 2022 :octocat:
JavaFBP Classical FBP implementation for Java. @jpaulm Java LGPL 2022 :octocat:
JSFBP Classical FBP implementation for JavaScript. @jpaulm JavaScript MIT 2021 :octocat:
Node-RED Popular low-code IDE for event-driven apps. @knolleary JavaScript Apache 2026 :octocat: 🏠
NoFlo Popular FBP-inspired runtime for Node.js. @bergie JavaScript MIT 2024 :octocat: 🏠
Protoflow Thread-based FBP using Protocol Buffers. @artob Rust Unlicense 2025 :octocat: 📦 📖
SciPipe Mature scientific workflow library for Go. @samuell Go MIT 2024 :octocat: 🏠

Cross-Reference

Glossary

Classical FBP Apache NiFi Async-Flow NoFlo Node-RED
Network Flow System Graph Flow
Subnet 1 Process Group Subsystem Subgraph Subflow
Component 2 Processor Block Component Node
Process 3 Processor Process Process Node
Connection 4 Connection Connection Connection Wire
Port Port Port Port Port
Information Packet (IP) Flow File Message IP Message
Initial Information Packet (IIP) - Variable IIP Config Node
Scheduler Flow Controller Scheduler Runtime Runtime

Share on X Share on Reddit Share on Hacker News Share on Facebook Share on LinkedIn

Footnotes

  1. Subnets were also known as "composite components" in classical FBP.

  2. Components were described as "black boxes" in classical FBP.

  3. Processes were interchangeably called "threads" in classical FBP.

  4. Connections were also known as "bounded buffers" in classical FBP.

About

Awesome flow-based programming (FBP) resources. Contributions welcome!

Topics

Resources

License

Stars

Watchers

Forks