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

# OrbitFlare Jetstream

> High-performance gRPC service for Solana transaction streaming

<Success>
  Jetstream exists to give you a **reliable, low-latency stream of Solana transactions**—so you can build realtime apps (alerts, trading, analytics, monitoring) without running your own indexing pipeline.
</Success>

<Frame>
  <img src="https://mintcdn.com/orbitflare/oYFPcWR1PY_9HTel/images/jetstream.png?fit=max&auto=format&n=oYFPcWR1PY_9HTel&q=85&s=151463a42bcc71c7e8625de0efd8c760" alt="OrbitFlare Jetstream Architecture" width="4000" height="2250" data-path="images/jetstream.png" />
</Frame>

## Overview

OrbitFlare Jetstream is a high-performance gRPC service that enables real-time streaming of Solana transactions. It provides developers with a reliable and efficient way to monitor and process Solana blockchain transactions with minimal latency.

## Features

* Real-time transaction streaming via gRPC
* Flexible transaction filtering capabilities
* Account-based filtering (include, exclude, required)
* High throughput and low latency
* Robust error handling and reconnection
* Simple integration with existing Solana applications

## Getting Started

### Installation

To get started with OrbitFlare Jetstream, choose an example to clone:

<CardGroup cols={2}>
  <Card title="jetstream-client-example" icon="code" href="https://github.com/orbitflare/jetstream-client-example">
    Minimal Rust client demonstrating gRPC connection, filtering, and transaction streaming.
  </Card>

  <Card title="solana-wallet-tracker" icon="wallet" href="https://github.com/orbitflare/solana-wallet-tracker">
    Production-ready real-time wallet tracker with PumpFun decoding, whale alerts, and YAML-based filter config.
  </Card>
</CardGroup>

Clone the basic client example:

```bash theme={null}
git clone https://github.com/orbitflare/jetstream-client-example
cd jetstream-client-example
```

Or clone the wallet tracker for a more complete reference:

```bash theme={null}
git clone https://github.com/orbitflare/solana-wallet-tracker
cd solana-wallet-tracker
```

Build the client:

```bash theme={null}
cargo build --release
```

### Basic Usage

Run the client with default settings:

```bash theme={null}
./target/release/jetstream-client-example
```

Connect to a custom JetStream gRPC endpoint:

```bash theme={null}
./target/release/jetstream-client-example -j http://fra.jetstream.orbitflare.com
```

### Transaction Filtering

OrbitFlare Jetstream supports various filtering options to help you focus on relevant transactions:

1. **Command-line Filtering**:

```bash theme={null}
# Include specific accounts
./target/release/jetstream-client-example -i <pubkey1>,<pubkey2>

# Exclude accounts
./target/release/jetstream-client-example -e <pubkey1>,<pubkey2>

# Required accounts
./target/release/jetstream-client-example -r <pubkey1>,<pubkey2>
```

2. **JSON Configuration**:
   Create a `filters.json` file:

```json theme={null}
{
  "filters": {
    "my-filter": {
      "account_include": ["pubkey1", "pubkey2"],
      "account_exclude": ["pubkey3"],
      "account_required": ["pubkey4"]
    }
  }
}
```

Apply the JSON configuration:

```bash theme={null}
./target/release/jetstream-client-example -f filters.json
```

## Configuration Options

| Option                 | Description                           | Example                                                                    |
| ---------------------- | ------------------------------------- | -------------------------------------------------------------------------- |
| `--jetstream-grpc-url` | JetStream gRPC endpoint URL           | [http://fra.jetstream.orbitflare.com](http://fra.jetstream.orbitflare.com) |
| `--filter-config-path` | Path to JSON filter configuration     | None                                                                       |
| `--include-accounts`   | Accounts to include (comma-separated) | None                                                                       |
| `--exclude-accounts`   | Accounts to exclude (comma-separated) | None                                                                       |
| `--required-accounts`  | Required accounts (comma-separated)   | None                                                                       |

## Logging

Control the logging level using the `RUST_LOG` environment variable:

```bash theme={null}
RUST_LOG=debug ./target/release/jetstream-client-example
```

## Best Practices

1. **Error Handling**: Implement proper error handling for connection issues and transaction processing
2. **Filtering**: Use account filters to reduce unnecessary data processing
3. **Monitoring**: Set appropriate logging levels for monitoring and debugging
4. **Resource Management**: Properly manage gRPC connections and resources

## See Also

<CardGroup cols={3}>
  <Card title="Protocol Reference" icon="book" href="/data-streaming/jetstream-reference">
    Full Protocol Buffer specification, message types, and code generation guides.
  </Card>

  <Card title="Changelog" icon="clock-rotate-left" href="/data-streaming/jetstream-changelog">
    Version history, performance updates, and protocol changes.
  </Card>

  <Card title="Yellowstone gRPC" icon="wave-pulse" href="/data-streaming/yellowstone">
    Full-fidelity Geyser-based streaming with inner instructions and complete metadata.
  </Card>
</CardGroup>

## Support

For technical support or questions about OrbitFlare Jetstream, please contact our support team or visit our GitHub repositories:

* [jetstream-client-example](https://github.com/orbitflare/jetstream-client-example) — minimal Rust client
* [solana-wallet-tracker](https://github.com/orbitflare/solana-wallet-tracker) — full wallet tracking example with alerts
