# noflo/noflo

Flow-based programming for JavaScript

Repository: https://github.com/noflo/noflo
Canonical: https://ross.abutalabs.com/products/noflo
Homepage: https://noflojs.org/
Language: JavaScript
License: MIT
License Family: permissive
Topics: noflo, fbp, etl-framework, flow-based-programming, nocode
Last push: 2026-07-05T18:09:44+00:00

## Health v2 (maintenance only)
Score: 64/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 91, release rhythm 8, longevity 100
- inputs: {"age_days": 5567, "days_push": 59, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 3552, forks 264 (observed 2026-08-28T04:08:09.582640+00:00)

## What it is
NoFlo is a JavaScript implementation of Flow-Based Programming (FBP), where applications are defined as graphs of independent components communicating via message passing. It runs on both Node.js and the browser and can be used for full flow-based applications or to manage complex workflows and ETL processes.

## Use cases
- build data pipelines and ETL workflows in JavaScript
- coordinate asynchronous processes as visual graphs
- run flow-based applications on Node.js
- build event-driven browser applications with component graphs
- visually design and live-program applications
- wire up IoT devices and art installations with dataflows

## When to choose
- you want to separate control flow from logic using flow-based programming
- you need to orchestrate complex asynchronous data flows in JavaScript
- you prefer visual/graph-based application design
- you want reusable, reconnectable black-box components

## When to avoid
- you need a traditional web framework or UI toolkit
- your team prefers imperative or OOP paradigms
- you need minimal overhead for simple synchronous logic
- you require strong static typing across the graph

## Facets
- artifact type: library
- maturity: active
- function: workflow-automation, etl, concurrency, developer-tools
- domain: web-development, developer-tools
- platform: browser, cross-platform
- tags: flow-based-programming, fbp, visual-programming, dataflow, message-passing, nocode, automation, data-engineering, nodejs, javascript

## Member repositories
- noflo/noflo (main) score 64

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:09.582640+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:34:19.480748+00:00, confidence not recorded.
  - readme: https://github.com/noflo/noflo (fetched 2026-08-28T04:08:09.582640+00:00, sha 9278a652b53a)
  - homepage: https://noflojs.org/ (fetched 2026-08-29T09:28:32.446520+00:00, sha 9d32fd58953a)
  - site_page: https://noflojs.org/documentation (fetched 2026-08-29T09:28:32.455691+00:00, sha d94786ca9e34)
  - registry_npm: https://registry.npmjs.org/noflo (fetched 2026-08-29T09:28:32.457934+00:00, sha 7bf58328d5e3)
- Data as of 2026-08-30T08:39:29.467469+00:00.
