Skip to content

vectorman1/avax-indexer-svc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Avax Indexing Service

Overview

The Avax Indexing Service is a service that indexes the Avalanche blockchain and provides a queryable API for retrieving information about the blockchain and its contents.

The submodules of this repository are:

  • avax-indexer: a Go-based service that indexes the Avalanche blockchain and stores the data in a MongoDB database
  • avax-indexer-api: a Nest-based API that wraps the data created by the indexer and exposes some endpoints regarding transactions and active addresses

The API includes an OpenAPI Swagger specification which can be accessed at the base url once launched.

Prerequisites

  • Docker
  • Docker Compose

Steps

  1. Clone the repository:
    git clone [email protected]:vectorman1/avax-indexer-svc.git --recursive && cd avax-indexer-svc
  2. Set your own Infura API key for Avalanche network of choice under indexer.environment.AVAX_RPC_INFURA in the docker-compose.yml file. A key can be acquired here.
  3. Run docker compose up -d to start the service
  4. Run docker compose logs -f to view the logs
  5. Access the API at http://localhost:3000

NB: Initial catchup of the indexer can take about a minute. Logs of the indexer will show the progress. Afterwards, each time it is restarted, it will catch up with the missed out blocks.

NB1: It is possible for it to be required to bump up your Infura daily rate limits. This can be done via the Infura Dashboard -> Your API Key -> Security -> Requests.

Set these values as:

  • Per second requests rate-limiting: 1000
  • Per day total requests: 10000000

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published