Design patterns

Design patterns — pick how a flow is structured and reused

A design pattern is a structural choice you make for a piece of a flow. Building a flow you'll select one or more: first find the seams — the components the flow really breaks into — then, for each piece worth reusing, pick the level of reuse that fits. Reuse is a ladder — link in/out → link call → subflow → palette node — and each rung up buys more reuse but costs more to build and maintain, so climb only when the rung below won't do.

Name the pieces first — before any reuse, find the components hiding in the flow and draw a box around each.

Most spaghetti is three or four well-defined components that were never named. A giant flow is bad because it has no seams: you can't reuse, test, or hand off part of a blob, and any edit means reading the whole tab. Naming the structure is the fix — not tidier wires.

IngestNormalizeEnrichPublish

Look for one of these and box it off:

  • A repeated cluster — the same three or four nodes appearing in more than one place.
  • A logical stage — ingest, normalize, enrich, publish; each a bounded step with a clear input and output.
  • A bounded responsibility — one thing the piece owns from end to end.
  • A reuse magnet — a piece other flows will obviously want.

Once the seams are named, each becomes a candidate for reuse — and how you reuse it is the choice in the tabs that follow. A piece you'll only ever use once still earns its box; it just stays a plain seam.