Skip to content

jito-labs/jito-rust-rpc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jito-sdk-rust

Discord Rust Crates.io docs.rs

The Jito JSON-RPC Rust SDK provides an interface for interacting with Jito's enhanced Solana infrastructure. This SDK supports methods for managing bundles and transactions, offering improved performance and additional features while interacting with the Block Engine.

Features

Bundles

  • getInflightBundleStatuses: Retrieve the status of in-flight bundles.
  • getBundleStatuses: Fetch the statuses of submitted bundles.
  • getTipAccounts: Get accounts eligible for tips.
  • sendBundle: Submit bundles to the Jito Block Engine.

Transactions

  • sendTransaction: Submit transactions with enhanced priority and speed.

Installation

Prerequisites

This project requires Rust for development. If you haven't installed Rust yet, follow these steps:

  1. Install Rust:

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  2. Follow the on-screen instructions to complete the installation.

  3. Verify the installation:

    rustc --version
  4. (Optional but recommended) Keep Rust up to date:

    rustup update

Adding jito-sdk-rust to Your Project

Add the following to your Cargo.toml:

[dependencies]
jito-sdk-rust = "0.1.0"  # Replace with the actual version

Usage Examples

Basic Transaction Example

To run the basic transaction example:

  1. Ensure your environment is set up in jito-rust-rpc/examples/basic_txn.rs:

    // Load the sender's keypair
    let sender = load_keypair("/path/to/wallet.json")?;
    
    // Set up receiver pubkey
    let receiver = Pubkey::from_str("YOUR_RECEIVER_PUBKEY")?;
  2. Run the example:

    cargo run --example basic_txn

Basic Bundle Example

To run the basic bundle example:

  1. Set up your environment in jito-rust-rpc/examples/basic_bundle.rs:

    // Load the sender's keypair
    let sender = load_keypair("/path/to/wallet.json")?;
    
    // Set up receiver pubkey
    let receiver = Pubkey::from_str("YOUR_RECEIVER_PUBKEY")?;
  2. Run the example:

    cargo run --example basic_bundle

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support

For support, please join our Discord community.