Official Client Libraries
Yellowstone maintains two official client SDKs with full support for all gRPC methods:Rust Client
Native Rust client with async/await support and type-safe APIs
TypeScript Client
Node.js client with native bindings for high performance
Other Languages
Yellowstone gRPC uses standard Protocol Buffers and gRPC, making it accessible from any language with gRPC support:Go, Python & More
Examples for connecting with Go, Python, and any gRPC-compatible library
Key Features
All clients support the full Yellowstone gRPC API:- Streaming Subscriptions - Real-time account, transaction, slot, and block updates
- Bidirectional Streaming - Dynamic subscription management
- Unary RPC Methods - Query current state (slot, block height, version)
- Health Checks - Monitor server availability
- Authentication - Token-based auth with
x-tokenheader - TLS Support - Secure connections with custom certificates
Choosing a Client
Use the Rust Client If:
- You’re building Solana validators, bots, or high-performance indexers
- You need minimal latency and maximum throughput
- You prefer type-safe, compile-time guarantees
- You’re already using Rust in your stack
Use the TypeScript Client If:
- You’re building web applications or Node.js services
- You want a familiar JavaScript/TypeScript development experience
- You need to integrate with existing Node.js infrastructure
- You prefer dynamic typing and rapid iteration
Use Other Languages If:
- You have existing infrastructure in Go, Python, Java, etc.
- You want to leverage language-specific ecosystems
- Your team has expertise in a particular language
Getting Help
If you encounter issues or have questions:- Check the GitHub repository for issues and discussions
- Review the protobuf definitions for API details
- See the examples directory for working code
Next Steps
Rust Client
Get started with the Rust client
TypeScript Client
Get started with the TypeScript client