System map
Pombo

Pombo Protocol

Channel
Polygon PoS
Blockchain
Stream registry: ownership, permissions and metadata of every channel’s streams. Closed, Gated and Paid channels add a gate contract that decides who is in.
RPC node 1public provider
RPC node 2fallback
Custom RPCuser slot
The Graph
Indexer
The Streamr subgraph indexes stream and permission events on Polygon, so clients can query them without scanning the chain.
Graph nodeStreamr subgraph
Own API keyoptional
Pombo clients
On-device keys
Transport
Streamr Network
Peer-to-peer pub/sub with no central server. Broadcast, not memory.
Streams
Messages -1

stored by the channel’s providers

Ephemeral · interactions -2 -5

presence and typing live only (-2); reactions stored (-5)

Admin -3

moderation, channel image, password check · owner only

Keys -4

announce, request, answer

DM inbox

anyone publishes, only the owner reads

Push stream

anyone publishes, no public reads

Storage providers
chosen per channel by its owner
Provider A
Pombo storage cluster
Operated by the project.
The default, not a requirement.
Cassandra cluster
Node 1pombo-storage-node
Node 2pombo-storage-node
Provider B
Independent operator
Anyone can run pombo-storage-node.
Cassandra cluster
Node 1pombo-storage-node
Node Npombo-storage-node
ingest validation
signed reads
storedAt receipts
signed purge
TTL set by the owner
Push relay
pombo-push
Sees no content, sender or account, and subscribes to the push stream, closed to public reads. Registrations arrive over Streamr, encrypted to its public key. Wake signals carry a 1-byte tag and a proof-of-work; it fans out to every device under that tag.
Push services
FCM for the Android app; Web Push through each browser’s service, Apple’s APNs on iPhone.
carries no content