> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alginte.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Streams builder overview

> Build, validate, and run Kafka Streams topologies visually — sources, processors, and sinks on a canvas, with SpEL expressions for the logic.

The Streams builder lets you compose a **Kafka Streams topology on a visual
canvas** — no Java project, no build pipeline. You connect sources, processors,
and sinks, write the transformation logic as
[SpEL expressions](/streams/spel), validate the whole graph, and deploy it.
The deployed topology runs inside your Alginte instance, next to your cluster.

## The building blocks

* **Sources** read from topics — as a *KStream* (record stream), *KTable*
  (changelog view), or *GlobalKTable* (fully replicated table for joins).
* **Processors** transform the flow. The palette covers the Kafka Streams
  operator set: *map / mapValues / flatMap / flatMapValues*, *filter*,
  *selectKey*, *peek / foreach / print*, *merge*, *broadcast / split*
  (branching), *repartition*, grouping (*groupBy / groupByKey*), stateful
  aggregation (*aggregate*, *reduce*, *count*, *cogroup*), *windowing*
  (time and session windows, *suppress*), and *joins* (stream–stream,
  stream–table, foreign-key) — with *materialize* for named state stores.
* **Sinks** write the result to a topic.

Records flow along the edges you draw; where an operator needs logic — a
predicate, a mapping, an aggregation — you write a short
[SpEL expression](/streams/spel) in a type-aware editor with completions and
live validation.

## The wizard

Creating a stream is a three-step wizard:

1. **Stream Properties** — the `application.id` (the stream's durable
   identity), serde defaults, and any Kafka Streams configuration you want to
   set explicitly.
2. **Stream Flow** — the canvas. Add nodes, connect them, configure each node
   in its drawer. Validation runs as you build: nodes and steps carry error
   badges until the graph is complete and consistent.
3. **Submit Stream** — review and submit. The topology is built server-side
   and starts running.

The canvas supports the editing conveniences you'd expect: copy/paste and
undo/redo (Ctrl+C/V, Ctrl+Z/Y), multi-select with Shift+drag, and node
duplication.

## Where your work lives

* **Designs export and import freely** — the topology (canvas layout included)
  round-trips as JSON. Exporting is your durable copy and your sharing
  mechanism; importing recreates the design ready to edit or deploy.
* **Deployed streams are ephemeral** in the Community edition: they run
  normally, but a restarted Alginte instance comes up with no deployed
  streams — re-import and re-deploy to continue. The UI labels deployments
  accordingly at deploy time. Durable, auto-restored deployments are a
  [Professional capability](/editions/licensing).
* **Processing state and progress always live on the Kafka cluster**
  (changelog topics, committed offsets) — never inside Alginte. A redeployed
  topology resumes exactly where it left off; no data is lost by a restart.

## Lifecycle

Deployed streams appear on the Streams page with their state. From the
stream's detail page you can **start**, **stop**, and **pause/resume** it,
inspect the topology, and export the design.

<Note>
  A deployed topology runs inside the Alginte process. For scaling and
  multi-instance considerations, see
  [Running multiple instances](/installation/jar#running-multiple-instances).
</Note>
