SHUTTLE is a proxy server that enables the use of Blockscout block explorer for Cosmos-based chains.
Shuttle works as a proxy on websocket connection and HTTP requests. Incoming JSON RPC requests is translated to corresponding Cosmos HTTP requests and then a result is transmitted in Ethereum format. Websocket connection transmits a new block info from cosmos chain to the client. The are several settings for the proxy that should be installed thorugh environments variables:
HTTP_TENDERMINT_URL
- address of cosmos nodeWS_TENDERMINT_URL
- address of cosmos node supported a websocket connectionHTTP_LISTEN_ADDR
- listening addressLOG_LEVEL
- log levelBECH_PREFIX
- prefix of addresses in the cosmos-based chainCOIN_DENOM
- coin denomination in the cosmos-based chain
Important
This project is under development right now. Some requests could be unavailable and some fields in responses could be inaccurate.
- Go 1.23.3
- golangci-lint 1.62.2
- Swagger
- GNU Make
- Install necessary tools, for build will be enought the following:
- Go 1.23.3
- GNU Make
- Run the following command
$ make build
Resulted binary file will be located in bin
directory
Instead of installation all nececcary tools locally it is possible to use prepared development docker container:
- Install docker and docker-compose
- Run the following command
$ docker-compose run dev
- Once container is run print the following command
$ make build
The simplest way to run shuttle - use docker compose:
- Install docker and docker-compose
- Run:
$ docker-compose up proxy