Skip to content

feat(explorer): add circulating supply column to tokens page - #1295

Open
decofe wants to merge 5 commits into
mainfrom
centaur/explorer-tokens-liquidity-column-1790787033
Open

decofe wants to merge 5 commits into
mainfrom
centaur/explorer-tokens-liquidity-column-1790787033

Conversation

@decofe

@decofe decofe commented Sep 30, 2026 •

Copy link
Copy Markdown
Member

Summary

Adds a Circulating supply column to the explorer's /tokens page and orders the verified token list by it, so the tokens with the most supply show up first.

  • Circulating supply is each token's onchain totalSupply. The verified-tokens API response doesn't include supply, so the server reads totalSupply for every verified token in one batched RPC request. If a read fails, that token shows - and is sorted last.
  • USD tokens are shown as compact dollar amounts (for example $434.2M). Other currencies are shown as a compact amount plus the currency code (for example 1.42M EUR). The full value appears on hover.
  • Sorting runs on the full verified list before pagination, so the order holds across pages. Supplies can only be compared within one currency, so USD-denominated tokens come first, then other currencies, then tokens with no known supply. Tokens with equal supply keep the API's order.
  • On mobile (stacked layout), the secondary line now reads <circulating supply> · <holders> holders.

Validation

  • pnpm check:types and biome pass for apps/explorer
  • pnpm test passes for apps/explorer
  • New test/tokens.node.test.ts covers the sort order and checks that fetchTokens fills in supplies from the onchain reads

Screenshots

I couldn't take before/after screenshots: the local dev server needs explorer RPC credentials that weren't available.

Prompted by: @shekhirin

Co-authored-by: Derek Cofausper <256792747+decofe@users.noreply.github.com>
Co-authored-by: Derek Cofausper <256792747+decofe@users.noreply.github.com>
@decofe decofe changed the title feat(explorer): add liquidity column to tokens page feat(explorer): add AOP column to tokens page Sep 30, 2026
Co-authored-by: Derek Cofausper <256792747+decofe@users.noreply.github.com>
@decofe decofe changed the title feat(explorer): add AOP column to tokens page feat(explorer): add circulating supply column to tokens page Sep 30, 2026
@github-actions

github-actions Bot commented Sep 30, 2026 •

Copy link
Copy Markdown

Cloudflare Deployments

App Environment Status Preview
explorer devnet [OK] Deployed View Preview
explorer mainnet [OK] Deployed View Preview
explorer nextfork [OK] Deployed View Preview
explorer testnet [OK] Deployed View Preview
explorer zone-prover [OK] Deployed View Preview
fee-payer devnet [>>] Skipped No changes
fee-payer moderato [>>] Skipped No changes
og - [>>] Skipped No changes
reth-snapshots-viewer - [>>] Skipped No changes
tempo-snapshots-viewer - [>>] Skipped No changes
tokenlist - [>>] Skipped No changes

@github-actions

Copy link
Copy Markdown

Bundle Size Report

Metric Size Δ Change
Total 17.3 MB +13.1 MB (+309.4%)
Gzip 3.9 MB +2.7 MB (+219.2%)
Brotli 3.3 MB +2.2 MB (+209.0%)
Chunk changes (>1KB)
Chunk Change
assets/chains.js (removed) -360.7 KB
assets/tempo-queries.js -301.0 KB
assets/core.js (removed) -189.5 KB
assets/export-rate-limit.js (removed) -177.3 KB
assets/engine-javascript.js (removed) -92.9 KB
assets/decodeAbiParameters.js (removed) -71.7 KB
assets/_hash.js -36.1 KB
assets/react.js -31.8 KB
assets/AbiItem.js (removed) -27.1 KB
assets/sha2.js (removed) -14.7 KB
assets/queryOptions.js -11.8 KB
assets/Bytes.js -9.6 KB
assets/Amount.js -9.6 KB
assets/env.js -9.2 KB
assets/DataGrid.js -6.7 KB
assets/fee-amm-pool-rows.js (removed) -6.6 KB
assets/validators.js (removed) -5.1 KB
assets/token.js -5.1 KB
assets/html-derivative.js (new) +1.0 KB
assets/TransactionCell.js (new) +1.1 KB
...and 354 more

Compared against main branch (baseline from 4/27/2026, 4:02:54 PM)

Co-authored-by: Derek Cofausper <256792747+decofe@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown

Bundle Size Report

Metric Size Δ Change
Total 17.4 MB +13.1 MB (+309.9%)
Gzip 3.9 MB +2.7 MB (+219.8%)
Brotli 3.3 MB +2.2 MB (+209.6%)
Chunk changes (>1KB)
Chunk Change
assets/chains.js (removed) -360.7 KB
assets/tempo-queries.js -301.0 KB
assets/core.js (removed) -189.5 KB
assets/export-rate-limit.js (removed) -177.3 KB
assets/engine-javascript.js (removed) -92.9 KB
assets/decodeAbiParameters.js (removed) -71.7 KB
assets/_hash.js -36.1 KB
assets/react.js -31.8 KB
assets/AbiItem.js (removed) -27.1 KB
assets/sha2.js (removed) -14.7 KB
assets/queryOptions.js -11.8 KB
assets/Bytes.js -9.6 KB
assets/Amount.js -9.6 KB
assets/env.js -9.2 KB
assets/fee-amm-pool-rows.js (removed) -6.6 KB
assets/DataGrid.js -5.8 KB
assets/validators.js (removed) -5.1 KB
assets/token.js -5.0 KB
assets/html-derivative.js (new) +1.0 KB
assets/TransactionCell.js (new) +1.1 KB
...and 355 more

Compared against main branch (baseline from 4/27/2026, 4:02:54 PM)

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants