Decentralized Market Terminal
ADEX is a mainnet-first DEX discovery and analytics terminal with token, pair, chart, trade, transaction, holder and wallet views plus a first-party AMM under active development.
Current Product State
The public terminal is designed around 13 production networks: Ethereum, Base, BNB Chain, Arbitrum, Optimism, Polygon, Avalanche, Linea, Mantle, Sonic, ZKsync, Solana and Robinhood Chain. Mainnet data is the default everywhere in the product. Sepolia is the single explicit developer testnet and is visually separated from mainnet screens and rankings.
ADEX's own Factory, Pair and Router contracts remain in the developer contract lab until a verified public deployment exists. Local chain 31337 is never presented as a public ADEX network.
Network Model
One central network registry defines chain IDs, public RPC endpoints, explorers, GeckoTerminal network identifiers, native currency symbols and holder-index sources. The header network selector contains a MAINNET group and one TESTNET · DEVELOPER group for Sepolia.
All-mainnet rankings contain only the 13 production networks. Sepolia rows are never merged into mainnet trending, gainers, losers, activity or statistics.
Market Data
Public market discovery and normalized pool data use blockchain-derived public sources including GeckoTerminal and DEX Screener where available. Tokens are identified by chain + contract address, never by ticker alone.
The Pools page shows live external pools on the selected public network. The Swap page currently performs live route/pool discovery only; it does not construct a public ADEX transaction until verified ADEX contracts are configured for that network.
Charts and Trades
Public token and pair charts use real upstream OHLCV candles for the selected pool. The server serializes no-key OHLCV requests, keeps the last successful real candle set in memory, and keeps serving that real cache while the source refreshes. Missing time buckets are never synthesized.
If the primary no-key OHLCV source is temporarily unavailable before ADEX has a real cache for that pool, supported mainnet charts switch to an embedded DEX Screener real-market chart rather than leaving a blank or fabricated chart. The UI labels that state as an external real-chart fallback.
Recent trade rows are pulled from real indexed pool swap activity. Sepolia uses the dedicated GeckoTerminal Sepolia profile and remains visually marked TESTNET; it is never merged into mainnet rankings.
Multicharts
/multicharts opens up to four trending pools from the selected network in one dense grid. Each slot uses the same real-candle rules as the single token terminal: native ADEX chart when public OHLCV is available, real cached candles when previously fetched, and a real external chart fallback on supported mainnets while the public source refreshes.
The grid loads progressively so one page does not intentionally burst the free upstream API. A queue/error state is shown instead of inventing candles.
Price Alerts
/alerts stores user-created price rules only in browser localStorage. While the page is open, ADEX checks the real token-price source on a controlled interval and marks a rule TRIGGERED only when the returned price crosses its configured USD threshold.
Alert rules contain chain, contract address, comparison direction and target. An unavailable upstream price leaves the rule UNAVAILABLE; ADEX does not substitute a guessed value or create a server-side notification profile.
Transactions
ADEX provides its own transaction inspector at /tx/{chain}/{hash}. EVM transaction/receipt/block data and Solana transaction data are read directly from the selected network's public JSON-RPC endpoint. The view includes the fields that network actually returns: status and block/slot, addresses, native value/fee data, gas/calldata/logs on EVM, and account/instruction details on Solana.
A developer can select a network in the header and open a native transaction identifier without an explorer API key: a 0x transaction hash on EVM or a base58 signature on Solana.
Holders
Holder data uses public no-key sources. Where a usable public Blockscout index responds, ADEX displays real top-holder address rows plus counters. GeckoTerminal aggregate analytics are used when returned, and Ethereum/Base/BSC can use the verified no-key Honeypot totalHolders field as a count-only fallback. Networks without a reliable public holder index remain marked limited/unavailable.
The UI explicitly distinguishes holder analytics from a holder address list. An unavailable address list is never replaced by guessed wallets.
ADEX AMM Architecture
ADEXFactory creates canonical token pairs and stores the pair registry. ADEXPair holds reserves, issues LP shares and enforces the constant-product invariant. ADEXRouter handles quotes, liquidity and exact-input routing.
The Router now supports ERC-20 routes plus wrapped-native ETH paths: ETH→token, token→ETH, add-liquidity-with-ETH and remove-liquidity-to-ETH. Direct native transfers from callers other than wrapped ETH are rejected.
Sepolia Wallet Deployment Lab
/developer/deploy-sepolia is the only public deployment workflow currently exposed. The server provides compiled Factory/Router ABI and bytecode plus the Sepolia wrapped-native configuration, but it has no signer and never receives a private key or seed phrase.
The browser requires an injected wallet on chain 11155111. A Factory deployment uses the connected wallet as fee setter; after confirmation, ADEX reads the deployed bytecode and validates feeSetter plus the initial 30-bps fee. Router deployment is enabled only after that Factory gate passes, then ADEX validates its factory and wrapped-native constructor state on-chain.
First-Party Developer Indexer
The first-party SQLite event indexer consumes ADEX Factory PairCreated plus Pair Mint, Burn, Swap and Sync events. It produces pool state, swap history, liquidity history and ADEX-owned OHLCV from actual chain events.
The default local scope remains chain 31337 and is accessible under /developer/local-*. A separate, isolated Sepolia scope becomes available only after a verified deployment manifest is saved and indexed; local and Sepolia history files are never mixed. Neither scope is presented as mainnet liquidity.
Trading and Execution
The public Swap page discovers the selected token's highest-liquidity public pool and links into ADEX token, chart/trade and holder views. Public ADEX execution remains disabled until verified Factory/Router addresses are configured on the selected chain.
The local developer lab can construct and sign real chain-31337 transactions through an injected wallet. Signing always remains inside the wallet; the server never receives a private key or seed phrase.
Wallets and Portfolio
Wallet views read native balances directly from public JSON-RPC on every supported public network. ERC-20 portfolio rows are shown where a real no-key index is available. Estimated USD totals are calculated only from genuine exchange-rate fields.
Security Boundary
Successful automated tests are not an independent audit. A public ADEX deployment still requires network-specific preflight, verified source publication, broader security review, public testnet validation and explicit deployment approval.