Explorer UI for Cosmos SDK chains (with EVM support) backed by the Yaci indexer.
- Auto-detects chain ID, denoms, and message types from the chain
- Cosmos + EVM transactions, live block updates, unified search
- IBC denom resolution (optional REST endpoint), cached in-browser
- Analytics: chain stats, gas efficiency, volume, top message types
- Built with React Router 7, TypeScript, Tailwind/shadcn, TanStack Query, Vite
- Deployment and ops: DEPLOYMENT_GUIDE.md
git clone https://github.com/Cordtus/yaci-explorer.git
cd yaci-explorer
cp .env.example .env
# set CHAIN_GRPC_ENDPOINT and POSTGRES_PASSWORD in .env
docker compose -f docker/docker-compose.yml up -dUI: http://localhost:3001 • PostgREST: http://localhost:3000 • Prometheus: http://localhost:2112
Prereq: running PostgreSQL + PostgREST + Yaci indexer.
yarn install
yarn build
npx serve -s build/client -l 3001| Variable | Purpose | Default |
|---|---|---|
CHAIN_GRPC_ENDPOINT |
Chain gRPC endpoint | localhost:9090 |
POSTGRES_PASSWORD |
DB password | foobar |
VITE_POSTGREST_URL |
PostgREST base URL for the UI | http://localhost:3000 |
VITE_CHAIN_REST_ENDPOINT |
REST endpoint for IBC denom traces | unset |
CHAIN_ID, CHAIN_NAME |
Override auto-detection | auto |
YACI_IMAGE |
Yaci image tag | ghcr.io/cordtus/yaci:main |
Multi-chain: run separate compose stacks with unique POSTGRES_PORT, POSTGREST_PORT, EXPLORER_PORT.
src/
routes/ # file-based pages
components/ # ui, common, analytics, JsonViewer
lib/ # api clients, utils, chain-info
config/ # chain presets
types/ # TypeScript defs
yarn install
export VITE_POSTGREST_URL=http://localhost:3000
yarn devScripts: yarn typecheck, yarn lint, yarn build.
/blocks_raw– raw blocks/transactions_main– parsed transactions/messages_main– messages (for filters)/events_main– events Example:curl "http://localhost:3000/blocks_raw?order=id.desc&limit=10"
Add to src/config/chains.ts for custom symbols/features:
'your-chain-id': {
name: 'Your Chain',
nativeDenom: 'utoken',
nativeSymbol: 'TOKEN',
decimals: 6,
features: { evm: false, ibc: true, wasm: true },
}MIT (see LICENSE).