Skip to content

command-line tool for real-time Solana blockchain monitoring, account tracking, and data indexing with advanced caching and gRPC streaming capabilities

Notifications You must be signed in to change notification settings

senzenn/Solana-gRPC_indexer-Rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Solana Indexer CLI - High-Performance Blockchain Monitoring Tool

A powerful command-line tool for real-time Solana blockchain monitoring, account tracking, and data indexing with advanced caching and gRPC streaming capabilities.

Solana Logo

Solana Indexer Rust

🚀 Key Features

  • Real-time Slot Tracking: Monitor Solana slot progression with millisecond precision
  • Account & Wallet Monitoring: Track balances, transactions, and activity for specific accounts
  • gRPC Streaming: High-performance streaming API for real-time data delivery
  • Multi-Layer Caching: LRU + TTL caching system with sub-millisecond response times
  • IPFS Integration: Distributed storage for blockchain data persistence
  • Database Persistence: SQLite database for historical data and analytics
  • Interactive TUI: Beautiful terminal user interface with real-time dashboards
  • Performance Benchmarking: Built-in performance testing and optimization

🖥️ Demo

Home Interface

Solana Indexer Home Beautiful terminal interface with ASCII art logo and feature overview

Real-time Slot Tracking

Slot Tracking Demo Real-time slot monitoring with horizontal layout and colored output

📦 Installation

Prerequisites

  • Rust 1.70+
  • SQLite3

Quick Start

# Clone and build
git clone https://github.com/yourusername/solana-indexer.git
cd solana-indexer/cli-grpc
cargo build --release

# Set up environment
cp env.example .env
# Edit .env with your API keys

# Run the CLI
cargo run -- --help

🎯 Essential Commands

Real-time Slot Tracking

# Track Solana slots with leader information
cargo run -- track slots --leaders --interval 400

# Track with detailed transaction information
cargo run -- track slots --transactions --save

Account & Wallet Monitoring

# Add account to monitoring
cargo run -- track wallets add --address u5LGUD4bX7BpaUuMjNw5oZp1vcbJhhPy9dJpKaWggCX --name "My Account"

# Remove account from db
cargo run -- track wallets remove --address u5LGUD4bX7BpaUuMjNw5oZp1vcbJhhPy9dJpKaWggCX --name "My Account"


# Monitor account in real-time
cargo run -- track wallets watch --interval 2000

# List monitored accounts
cargo run -- track wallets list --detailed

Interactive TUI (Broken)

# Launch beautiful terminal interface
cargo run -- tui

# Professional logging interface
cargo run -- logger

Performance Testing

# Run comprehensive performance tests
cargo run -- performance-benchmark --duration 60

🔧 Configuration

Environment Variables

# Solana RPC endpoints
SOLANA_RPC_URL=https://api.mainnet-beta.solana.com
QUICKNODE_API_KEY=your_quicknode_api_key

# Database
DATABASE_URL=sqlite:solana_indexer.db

📊 Performance

  • L1 Cache: Sub-millisecond access for hot slots
  • L2 Cache: Millisecond access for recent transactions
  • L3 Cache: Few milliseconds for account states
  • Throughput: 1000+ slots per second, 5000+ TPS capacity
  • Response Time: Sub-millisecond cache access

🏗️ Architecture

Project Architecture

Detailed architecture diagram showing the data flow from CLI interface through core services, data sources, caching & storage, to output & streaming layers.

🏛️ Core Modules

  • Slot Tracker: Real-time slot progression monitoring
  • Account Watcher: Account balance and transaction monitoring
  • Cache System: Multi-layer LRU + TTL caching
  • Database Layer: SQLite persistence for historical data
  • gRPC Server: High-performance streaming API
  • IPFS Storage: Distributed data storage

🤝 Contributing

# Run tests
cargo test

# Run benchmarks
cargo bench

📄 License

MIT License - see the LICENSE file for details.


solana-gprc-indexerRust

rust-solana-grpc

About

command-line tool for real-time Solana blockchain monitoring, account tracking, and data indexing with advanced caching and gRPC streaming capabilities

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages