Skip to content

Latest commit

 

History

History
51 lines (36 loc) · 1.53 KB

File metadata and controls

51 lines (36 loc) · 1.53 KB

IconRegistry Project Guidelines

Icon Pipeline

  • On-chain icons are 64×64 PNGs, preprocessed from 400×400 source images
  • Source: DefiLlama icons fetched via scripts/sync-defillama.js
  • Canonical upload source: icons-64/ directory
  • Docs/demo icons: docs/ directory (also 64×64)

Key Directories

  • icons-64/ - Preprocessed 64×64 icons for on-chain upload (ACTIVE)
  • docs/ - 64×64 icons for GitHub Pages demo site (ACTIVE)
  • contracts/ - Solidity contracts (IconRegistry.sol)
  • scripts/ - Deployment and sync scripts

Commands

# Sync icons from DefiLlama
npx tsx scripts/sync-defillama.js

# Deploy icons to mainnet (uses Turnkey)
npx tsx scripts/deploy-icons-turnkey.ts

# Verify on-chain icons
npx tsx scripts/verify-icons.js

# Setup chain ID mappings
npx tsx scripts/setup-chain-mappings.ts

Contract

  • Proxy: 0x342e808c40D8E00656fEd124CA11aEcBB96c61Fc (mainnet)
  • Owner signs via Turnkey (credentials in GitHub secrets)

Slug Convention

  • Format: {category}/{name} (e.g., chains/ethereum, protocols/uniswap)
  • Names are kebab-case, lowercase, alphanumeric + hyphens only
  • Legacy slugs may have rsz prefix (from old DefiLlama source files)
  • New uploads use clean names (rsz prefix stripped during preprocessing)

Registry History

  • Update docs/registry-history.md when deploying on-chain changes:
    • New icons deployed
    • Token mappings added/updated
    • Chain mappings added/updated
  • Use date headers ## [YYYY-MM-DD] and categorize by type (Icons, Token Mappings, Chain Mappings)