SOLIDX (Web3 Indexer) is a high-performance, service-oriented event-driven system designed for indexing and processing blockchain data with a focus on Solana and Ethereum ecosystems.
solidix1.mp4
Ensure Docker is installed:
docker compose version- Install and upgrade Deno:
deno upgrade canary # temp: required for web- Configure RPC Balancer:
Add your configuration to rpc.balancer.json
- If you need demo data:
deno task dev:up
deno run -A config/load-dumps.ts- Start SOLIDX:
deno task dev:up
deno task devThe application should run on localhost:4000.
Enjoy!
- Architecture & System Design
- Implementing Handlers
- Indexer vs Crawler
- Network Adapters
- Gateway
- Plans For Next Versions
See the notebooks in analytics for specific implementation details and analytics.
Q: Crawling is slow, reports update once a second. How to increase speed?
A: This is what we get when we don't have infra and using free APIs. The main performance bottleneck is network troughput - either because of the rate-limits or unstable connection. You need a number of stable RPC enpoints and proxies to increase ingestion rate when runinng locally.
Q: 'no space left on device' error when using block indexer.
A: Major blockchains are measured in petabyte ranges. Don't use block caching - it's cheaper to setup your own RPC nodes if you need full hostory. Block caching option exists for edge cases and testing purposes so you wouldn't need to spend netwok resouces.
The license is source-available. Companies and employees should read carefully, individuals may use it free of charge.
Full Text: LICENSE