cudoventures / cudos-bdjuno

Cudos specific BDJuno, BDJuno is the official Juno implementation for BigDipper, the open-source block explorer for Cosmos

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BDJuno

GitHub Workflow Status Go Report Card Codecov branch

BDJuno (shorthand for BigDipper Juno) is the Juno implementation for BigDipper.

It extends the custom Juno behavior by adding different handlers and custom operations to make it easier for BigDipper showing the data inside the UI.

All the chains' data that are queried from the RPC and gRPC endpoints are stored inside a PostgreSQL database on top of which GraphQL APIs can then be created using Hasura.

Usage

To know how to setup and run BDJuno, please refer to the docs website.

Local env via Docker

TODO: Add LINK to cudosbuilder init

Testing

If you want to test the code, you can do so by running

$ make test-unit

Note: Requires Docker.

This will:

  1. Create a Docker container running a PostgreSQL database.
  2. Run all the tests using that database as support.

Configuration explanation:

  1. There are 3 configs that have to be set up:
    • Inside the BDJuno folder you have:
    • .env-bdjuno - this is the env variables for the BDJuno docker (only the ones relevant are listed, leave others as is)
      • HASURA_GRAPHQL_DATABASE_URL - THE URL of the DB for hasura to read from
      • HASURA_GRAPHQL_ADMIN_SECRET - the password of the HASURA
      • HASURA_GRAPHQL_ENDPOINT_URL - the DNS(IP):PORT of the machine where hasura is hosted
      • HASURA_ACTIONS_GRPC - the IP:9090 of the node that hasura is reading from
      • HASURA_ACTIONS_RPC - the IP:26657 of the node that hasura is reading from
      • HASURA_ACTIONS_PORT - the port of which hasura actions will run

About

Cudos specific BDJuno, BDJuno is the official Juno implementation for BigDipper, the open-source block explorer for Cosmos

License:MIT License


Languages

Language:Go 94.0%Language:PLpgSQL 5.0%Language:Makefile 0.5%Language:Dockerfile 0.3%Language:Shell 0.2%