Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

What you may do with it

Streamform is three things, and each has one rule.

Open sourceThe free binaryHosted
What it isThe file formats (streamform-spec), published with each release. Planned, and not existing yet: the testing library (streamform-test), the Flink runner image (streamform-flink-runner), the GitHub Action (streamform-action)The streamform command: compiler, simulator, backends, plan diff, and everything that ships in the binaryStreamform Cloud: shared deployment and plan history, hosted analytics — optional, arriving later
TermsApache License 2.0, in each repositoryFree to use locally and in production, with no account, no seat, node, application, or time limit, and no feature behind a login. Closed source. Terms of use.Free tier first; terms published with it
Your dataMakes no network call except the commands whose purpose is to connect. Today that is apply, which talks to the Flink SQL Gateway you name and to nothing else; login, sync, and version --check are reserved for the hosted service and do not exist yet. Records, SQL, event payloads, and message bodies never leave your machine under any setting.Receives metadata only — digests, versions, verdicts, counts, timings — and only after you opt in. streamform sync --dry-run prints exactly what would be sent.
What will not changeThe formats stay open and versioned; a newer document version is refused, never guessedThe binary stays free for local and production use; a version you have downloaded keeps the terms it came withThe data rule above holds on every tier

Why it is drawn this way

Everything public is a recipe, a schema, or a client of the binary — never a piece of it. The formats are published so that your tools, your CI, and the open testing library can read what Streamform writes without needing its source. The engine stays closed because it is the work; it stays free because a tool for developing streaming applications is only useful if every developer on the team can run it.

Where things are

  • Downloads, checksums, the example projects, and the changelog (signatures are planned): glyf-data/streamform-releases. Issues and questions go there too.
  • The formats: glyf-data/streamform-spec, mirrored from the binary’s own source on every release, starting with v0.5. streamform schema <document> prints the same schemas from the binary you have.
  • The testing library, the runner image, and the Action: planned, with no repository yet.