Skip to content

Latest commit

 

History

History
102 lines (72 loc) · 2.32 KB

README.md

File metadata and controls

102 lines (72 loc) · 2.32 KB

xCallScan - ICON's General Message Passing Explorer

xCallScan is an Explorer that allows users to look up relay messages and transactions being sent through xCall Service (General Message Passing).

xCallScan is typically made of:

  1. Indexer: that fetches the raw data from the on-chain, extracts, transforms, and stores it in the database in an efficient way to provide quick access to the blockchain data

  2. API: an API that queries the database

  3. Explorer: A frontend app that displays the data

  4. WebSocket: client dApp can subscribe websocket to get new messages in realtime

  5. Network Subscriber: the service listens for new events from networks/chains, extracts, transforms data in realtime

  6. Action Analyzer: the service analyzes message transactions to determine what action (SendMsg, Transfer, Swap, Loan...)

Screenshots

Getting started

Indexer

  • Install package

  • Change .env.example to .env and configure environment settings

  • Initialize database

    ts-node cmd db init
  • Migrate database

    ts-node cmd db migrate <filename.sql>
  • Start indexer

    npm run indexer
  • Start web socket

    npm run ws
  • Start network subscriber

    npm run subscriber
  • Start action analyzer

    npm run analyzer
  • Command

    ts-node cmd scan <network> <event> <flag_number> <xcall_address>
    ts-node cmd fetch <network> <event> <flag_number> <update_counter>
    ts-node cmd sync <from_sn><comma_or_hyphen><to_sn> <networks_separated_by_comma>
    ts-node cmd analyze <src_network> <dest_network> <sn>

Api

  • Install package
  • Change .env.example to .env and configure environment settings
  • Start API
    npm start

Explorer

  • Install package

  • Configure env in next.config.js

  • Build

    npm run build
  • Run dev

    npm run dev
  • Start app

    npm start

References