NotebookFlow
preprocessing.ipynb
model_baseline.ipynb
model_advanced.ipynb
postprocessing.ipynb
Load customer datainput
520 rows
Clean featurestransform
feature set
Train test splittransform
390 / 130 rows
Train baselinetransform
global linear
Train segmented modeltransform
by channel
Compare modelstransform
best RMSE
Analyst reportoutput
model report
5 nodes ok· 1.2s
preprocessing.ipynb
[1]
# @node: Load customer data [input] out=raw_df
import numpy as np
raw_df = pd.DataFrame({"channel": …, "revenue": …})
[2]
# @node: Clean features [transform] in=raw_df<-Load customer data.raw_df out=feature_df
feature_df["ad_spend"] = feature_df["ad_spend"].fillna(…)
[3]
# @node: Train test split [transform] in=feature_df<-Clean features.feature_df out=train_df,test_df,feature_cols
train_df = feature_df.iloc[:cutoff].copy()
[4]
# model_baseline.ipynb consumes preprocessing:Train test split.train_df
cross-notebook refs stay visible on the canvas
Private beta

n8n for your notebooks.

Turn notebooks and cell groups into visual pipelines — with AI assistance, bring-your-own-key models, and bidirectional sync across the web, VS Code, and JupyterLab.

A notebook is a graph

Mark cell groups with # @node: and NotebookFlow derives the DAG. Your .ipynb stays the source of truth.

Notebooks link to notebooks

Wire outputs across files with cross-notebook refs — data:Node.port. Reuse whole pipelines like functions.

Run it

Execute in dependency order. Stream results, charts, and AI output straight back into your cells.

Scroll

A notebook that thinks in pipelines

Visual pipeline canvas

Drag cells and notebooks onto a canvas and wire them into a DAG. The same graph, edited from either side — code and canvas stay in sync.

AI woven in

Generate nodes from a prompt, explain a pipeline in plain English, or ask anything with ⌘K — right where you work.

Bring your own key

Use your own OpenAI, Anthropic, or other provider key. Stored encrypted at rest, decrypted only to make the call — never harvested.

Runs anywhere

One engine behind the web app, VS Code, and JupyterLab — or point at your own. Your notebooks, your compute.

1

Bring your data

Drop a notebook or a CSV, or start from a template.

2

Wire it up

Compose cells and notebooks into a pipeline on the canvas.

3

Run it

Stream results, charts, and AI output back into your cells.

Ready to wire up your first pipeline?

Launch app