[Contribution] node-red-contrib-formulize — fit closed-form equations to sensor streams

Hi everyone,

I've been building a Node-RED palette that fits closed-form symbolic equations to sensor time-series — the kind of equation you can paste into a Function node or hand to an engineer, not another opaque model file.

What it does

Wire formulize-fit after any node that produces a CSV string, an array of objects (mqtt-in / http-in style), or an explicit {X, y} shape. Fire it once; the debug panel gets back:

  • The fitted equation as a SymPy string + LaTeX
  • R² on the training window
  • 1σ standard errors on each fitted coefficient (with a note flagging singular-covariance cases so you don't over-trust stderrs on tiny samples)
  • Optional BCa 95 % bootstrap CIs when you set msg.bootstrap = true
  • A named-equation match if the shape is recognized (framework name + canonical form)
  • A stable prediction URL — POST /f/{formula_id}/predict — you can hit for the next 30 days with any new X

Chain formulize-predict to hit that URL from the same flow.

What's in the repo

Three starter example flows (HVAC efficiency, solar degradation, predictive maintenance) — the JSON structure and node wiring are ready; the specific reference numbers are yours to fill in against your own data. Smoke test: recovers y = x² from 7 rows in ~2.5 s end-to-end, and POST /f/{id}/predict on the returned URL evaluates the fit on new points (verified today against the live API).

Honest disclosure

The palette calls a hosted API at api.formulize.dev by default. Free tier is 50 fits/month, no card required. The palette itself is MIT (github.com/vgpprasad91/node-red-contrib-formulize). The engine source and on-prem image are not open today — that's on the roadmap. The third node (formulize-drift) is in the palette but its refit backend is arriving in a follow-up release; baseline fetch works, refit does not yet. If either the on-prem story or drift refit is a hard requirement for you, hit reply and I'll prioritize.

Solo dev, this is my main project, feedback here goes straight into what I build next week.

Install

npm i node-red-contrib-formulize

Docs and worked examples: Node-RED × formulize — sensor streams → equations in 10 minutes

Would love to hear what sensor streams you'd point this at.

Cheers,
Guru