π§© Decoded Shred Stream
A Decoded Shred Stream delivers Solana transactions already reconstructed: deshredded and reassembled on our nodes, then sent to your server in the standard Solana wire format. No FEC/Merkle/deshredding pipeline on your side β transactions arrive ready for your parser, at sub-millisecond latency.
π§ Who It Is For
Choose Decoded Shred Stream if:
- You already have a transaction parser. The payload is a standard wire-format transaction (a bincode-serialized
VersionedTransaction). - You want standard-format ingestion without shred infrastructure. Erasure recovery (FEC), Merkle verification, and deshredding are done on-node for you β there is nothing shred-specific left to build or maintain.
- You need pre-confirmation data with minimal integration effort. Transactions are reconstructed from shreds before block confirmation, so you keep the timing edge of the shred feed with a fraction of the engineering.
βοΈ Positioning: Raw Shreds vs Decoded
ShredStream.com offers two products along the same axis β how much decoding is done for you:
| Product | You receive | You build | Delivery |
|---|---|---|---|
| Raw Shred Stream | Raw Turbine shreds | Deshredding + parsing + interpretation | UDP |
| Decoded Shred Stream | Wire-format transactions | Parsing + interpretation | UDP or gRPC |
- Choose Raw Shred Stream for byte-level control over everything, including reconstruction.
- Choose Decoded Shred Stream to skip reconstruction but keep your own transaction parsing.
π Latency
Deshredding happens on-node, straight from the shreds β not in a downstream service. The reconstructed transaction leaves the node within microseconds of the raw shred feed itself. You give up essentially nothing in latency and gain a standard, parser-ready payload.
π‘ Delivery Modes
- UDP β transactions are pushed as datagrams to the IP and port you configure, each prefixed by a compact binary header (16 bytes) and the 8-byte slot β the transaction starts at byte 24. See Receiving Decoded Transactions.
- gRPC β a connection-oriented, outbound stream with server-side account filtering and ordered delivery, over the same sub-millisecond-latency transactions. See gRPC Delivery.
π§° Official Clients
One package per language, covering both delivery modes with the same API β bind the port (UDP) or connect with your endpoint and token (gRPC), then iterate transactions with their slot and signatures. Reconnection, filter re-send and seq gap detection are handled for you.
| Language | Install | Package |
|---|---|---|
| JavaScript / TypeScript | npm install decoded-shredstream | npm |
| Python | pip install decoded-shredstream | PyPI |
| Rust | cargo add decoded-shredstream | crates.io |
| Go | go get github.com/shredstream/decoded-shredstream-go | GitHub |
Before execution. These transactions are captured from the shreds, before the block is executed: they carry no status, logs, balance changes or inner instructions, and some of them will fail on-chain. Use a post-execution source when you need confirmation.
π In This Section
- Receiving Decoded Transactions β the UDP envelope, offsets, gap detection, and a minimal decoder.
- gRPC Delivery β endpoint, token metadata, account filters, and
VersionedTransactiondeserialization.