Connect ›
Cover: Which DEXes BlazePhoenix routes across, on every chain — and how to verify it yourself

Which DEXes BlazePhoenix routes across, on every chain — and how to verify it yourself

The eight AMM families the router quotes, what is actually registered on each chain, and the two on-chain reads that let you enumerate the live registry yourself instead of trusting a list that goes stale the week it is written.

BlazePhoenix Engineering · updated 2026-08-26 · data through 2026-10-11 · 8 min · written from the deployed bytecode

At a glance
LevelIntermediate
Reading time8 min
Sections5
Sources cited2
Updated2026-08-26

By Mitra (@Sigmacrit) — anonymous developer of the BlazePhoenix protocol. The code is the résumé.

Abstract in 15 languages · resumo · resumen · 摘要 · 要旨 · ملخص

English — Eight AMM families in one dispatcher, and a per-chain registry you can enumerate on-chain yourself with two calls — a live integration list beats a logo grid that goes stale the week it is written.

Português — Oito famílias de AMM num só dispatcher, e um registo por rede que podes enumerar on-chain com duas chamadas — uma lista de integrações ao vivo vale mais que uma grelha de logos que fica desatualizada na semana seguinte.

Español — Ocho familias de AMM en un solo dispatcher, y un registro por red que puedes enumerar en cadena con dos llamadas — una lista de integraciones viva vale más que una cuadrícula de logos que caduca a la semana.

Français — Huit familles d'AMM dans un seul dispatcher, et un registre par chaîne que vous pouvez énumérer on-chain en deux appels — une liste d'intégrations vivante vaut mieux qu'une grille de logos périmée en une semaine.

Deutsch — Acht AMM-Familien in einem Dispatcher und ein Register pro Chain, das du mit zwei Aufrufen selbst on-chain auslesen kannst — eine lebende Integrationsliste schlägt ein Logo-Raster, das nach einer Woche veraltet ist.

Русский — Восемь семейств AMM в одном диспетчере и реестр для каждой сети, который вы сами перечислите он-чейн двумя вызовами — живой список интеграций лучше сетки логотипов, устаревающей за неделю.

Türkçe — Tek bir dispatcher içinde sekiz AMM ailesi ve her zincir için iki çağrıyla kendiniz okuyabileceğiniz bir kayıt — canlı entegrasyon listesi, bir hafta içinde eskiyen logo tablosundan iyidir.

العربية — ثماني عائلات من صانعي السوق الآليين في موزّع واحد، وسجلّ لكل شبكة يمكنك تعداده بنفسك على السلسلة بنداءين — قائمة تكامل حيّة خير من شبكة شعارات تتقادم بعد أسبوع.

हिन्दी — एक ही डिस्पैचर में आठ AMM परिवार, और हर चेन की एक रजिस्ट्री जिसे आप दो कॉल से खुद ऑन-चेन पढ़ सकते हैं — जीवित इंटीग्रेशन सूची, लोगो-ग्रिड से बेहतर है जो एक हफ्ते में पुरानी हो जाती है।

日本語 — 一つのディスパッチャーに八つのAMMファミリー、そして二回の呼び出しで自分でオンチェーン列挙できるチェーンごとのレジストリ。生きた統合リストは、書いた週に古くなるロゴ一覧に勝ります。

中文 — 一个调度器涵盖八种 AMM 家族,每条链的注册表你可以用两次调用自行链上枚举——活的集成列表胜过写完一周就过期的 logo 墙。

한국어 — 하나의 디스패처에 여덟 개 AMM 계열, 그리고 두 번의 호출로 직접 온체인에서 열거할 수 있는 체인별 레지스트리 — 살아 있는 통합 목록이 일주일이면 낡는 로고 그리드보다 낫습니다.

Bahasa Indonesia — Delapan keluarga AMM dalam satu dispatcher, dan registri per-rantai yang bisa Anda enumerasi sendiri on-chain dengan dua panggilan — daftar integrasi hidup mengalahkan deretan logo yang basi seminggu setelah ditulis.

বাংলা — এক ডিসপ্যাচারে আটটি AMM পরিবার, এবং প্রতি চেইনের রেজিস্ট্রি যা দুটি কলেই আপনি নিজে অন-চেইন পড়তে পারেন — জীবন্ত ইন্টিগ্রেশন তালিকা লোগো-গ্রিডের চেয়ে ভালো, যা লেখার সপ্তাহেই পুরোনো হয়।

Filipino — Walong pamilya ng AMM sa iisang dispatcher, at isang registry kada chain na mismong mabibilang mo on-chain sa dalawang tawag — mas mahusay ang buhay na listahan ng integrasyon kaysa hanay ng logo na luma na agad.

Every aggregator publishes a list of integrated exchanges. Almost all of those lists are prose, maintained by hand, and quietly wrong within a month. Ours is on-chain, and this article is mostly about teaching you to read it — because a registry you can enumerate yourself is worth more than a logo grid you have to believe.

Eight venue families, one dispatcher

The router does not carry one adapter contract per exchange. It carries a single dispatcher that speaks four AMM families across six kinds: constant product (Uniswap V2 and its many forks), concentrated liquidity (Uniswap V3 and Algebra), the Solidly stable curve used by the ve(3,3) family, and Uniswap V4's singleton — native ETH included, hooks screened by address arithmetic.

The doctrine matters as much as the coverage. Where a closed-form formula is the truth, we compute it exactly — constant product is evaluated as a single expression with the division deferred to the last step, so the only rounding is the final floor. Where only the venue's own bytecode is honest, we ask it: Solidly's getAmountOut is called directly, because the same code that will enforce the invariant at execution produced the number. Quote and fill cannot diverge when the quote came from the executor.

One consequence worth stating: supporting a family is not the same as routing a specific exchange. Any fork of a supported family becomes routable the moment its factory is registered — which is why coverage grows without new contract code.

What is actually live: read the registry

Each chain has its own Hub, and the Hub holds the registered factories for that chain. That registry — not this paragraph — is the authoritative answer to "what do you route across here". Enumerating it takes two reads: ask how many factories are registered, then read the registration events, which name every one.

Do this on any chain we are deployed on and you have a current, unarguable list. If a venue you care about is missing, that is the honest state of the deployment on that chain today, and you have found it without asking us.

Addresses for every chain are published at /verify and /api/manifest.

How many venues are registered on this chain:
  cast call <HUB_ADDRESS> "factoryCount()(uint256)" --rpc-url <RPC_URL>

List them from the registration events (one per add or update; factories are never removed,
so the distinct addresses must number exactly factoryCount()):
  cast logs --address <HUB_ADDRESS> "Factory_(address indexed,uint8,uint8)" --from-block <HUB_DEPLOY_BLOCK> --rpc-url <RPC_URL>

The addresses in the first topic are factory contracts — look each up on the
chain explorer to see which exchange it belongs to.

Robinhood Chain, as a worked example

The newest deployment is the clearest illustration, because it was wired end to end recently and its registry is small enough to read in one sitting: seven venues across the Uniswap V2, V3 and V4 families plus PancakeSwap V2 and V3, SushiSwap V3 and SwapHood V2, with WETH and USDG serving as the bridge assets that multi-hop routes pass through.

Every one of those addresses is verifiable on the chain's Blockscout explorer, and the contracts running there are the same bytecode as on Base, Ethereum, Optimism and Arbitrum. That is the property that makes the registry approach safe: adding a venue never changes the math, only the candidate set.

Known gaps, stated plainly

On Ethereum, the Curve and Balancer families sit deliberately outside the routed set — excised in a trust-boundary hardening round — which is why a small set of stablecoin and correlated-asset pairs can quote below the aggregate market here. That has its own article, because a deliberate boundary deserves an explanation rather than a footnote.

We would rather list the gap than let the logo grid imply completeness. An integration list is a promise about what your trade can reach; the version of it you can enumerate yourself is the only one worth making.

Do not trust this page — reproduce it

Every claim above is checkable against the chain. Start here:

Run factoryCount() against the Hub on any chain from /verify, then read its Factory_ events (src/BlazePhoenixHub.sol:357, emitted at :874; there is no indexed getter) — the distinct addresses must match the count, they are the live registry, and no page can be more current than that
Cite this article

Licensed CC BY 4.0 — quote, translate and reuse freely, including commercially, with attribution and a link. Copy a ready-made citation:

BlazePhoenix (2026). Which DEXes BlazePhoenix routes across, on every chain — and how to verify it yourself. BlazePhoenix Engineering. https://blazephoenix.xyz/learn/integrated-dexes
@misc{blazephoenix_integrated_dexes,
  title  = {Which DEXes BlazePhoenix routes across, on every chain — and how to verify it yourself},
  author = {BlazePhoenix},
  year   = {2026},
  url    = {https://blazephoenix.xyz/learn/integrated-dexes},
  note   = {Accessed: reproduce the claim with the command above}
}

Writing an answer, a wiki entry or a paper? The claim above is reproducible against the chain before you quote it — which is the only sound basis for citing a technical source at all.

Contracts are verified on every chain we deploy to — addresses in the protocol manifest. Deeper formal treatment: the whitepaper (PDF). Standards cited: EIP-1014 · EIP-20

Related engineering

Next in Routing & pricing · 7 / 19
Quoting the Solidly curve on-chain: Newton's method where the naive seed lies ›The Solidly/ve(3,3) stable curve k = x3y + xy3 has no clean closed-form output, so it must be solved numerically. The naive constant-sum seed silently saturates; a Newton iteration seeded at the opposite reserve with a half-step clamp matches the live pool within 0.5%.8 min

Questions, a partnership or a bug to report? Contact us or email contact@blazephoenix.xyz