# swap > DEX meta-aggregator: a browser dApp and a terminal CLI (`swap`) that race major EVM DEX aggregators for the best swap quote, rank by amount out (or amount in for exact-out), and can build executable calldata or EIP-712 intent orders. Public host: https://swagg-neon.vercel.app. License: Business Source License 1.1 (BUSL-1.1). swap is a single product with two surfaces that share the same quote/build engine: - **Web dApp** (this site): pick chain / tokens / amount, stream multi-venue quotes, connect a wallet (RainbowKit), approve and swap or sign an async order. - **CLI binary** `swap`: same ranking and build path from the terminal; optional local browser bridge (`--browser`) for signing. Supported chain aliases include `eth`, `arb`, `base`, `op`, `avax`, `bsc`, `hype`, `unichain`, `robinhood`. Sync venues include KyberSwap, Odos, Velora, 0x/Matcha, 1inch, Curve, Uniswap Classic. Intent venues (CoW, Velora Delta, UniswapX, 1inch Fusion, and related) need an explicit async opt-in on the CLI (`--allow-async`) and appear in the dApp when enabled server-side. There is no separate marketing site, blog, or public pricing page. The SPA at `/` is the product UI. Contributor docs live in the private source repository (`docs/`), not on this host. ## Product - [Interactive swap dApp](https://swagg-neon.vercel.app/): Browser meta-aggregator UI — multi-venue quotes, route comparison, wallet connect, approve/swap or async order signing - [Full LLM context](https://swagg-neon.vercel.app/llms-full.txt): Expanded product + API description for agents that want more than the link index ## CLI install - [One-shot installer](https://swagg-neon.vercel.app/install.sh): Downloads a prebuilt `swap` binary for macOS/Linux into `~/.local/bin` (override with `SWAP_INSTALL_DIR`) - [CLI binaries CDN](https://swagg-neon.vercel.app/cli/): Redirects to public Vercel Blob assets (`swap--`); used by the installer ## API (stateless JSON) Handlers are stateless: no server-side quote cache. Same contract as the local `swap` interactive server. Prefer the NDJSON stream for multi-venue races. - [Mode / bootstrap](https://swagg-neon.vercel.app/api/mode): `GET` — interactive flag, chains, venues, buyVenues, defaultChain, WalletConnect project id - [Token list](https://swagg-neon.vercel.app/api/tokens): `GET ?chain=` — curated per-chain token list (native prepended) - [Resolve token](https://swagg-neon.vercel.app/api/resolve-token): `POST {chain,input}` — symbol or `0x` address → address, symbol, name, decimals - [Quote](https://swagg-neon.vercel.app/api/quote): `POST` multi-venue quotes ranked best-first - [Quote stream](https://swagg-neon.vercel.app/api/quote/stream): `POST` NDJSON stream (`meta` → `route`/`verror` → `done`) as venues settle - [Route graph](https://swagg-neon.vercel.app/api/route): `POST` symbol-labelled hops for one venue (fresh re-quote) - [Build tx / order](https://swagg-neon.vercel.app/api/build): `POST` re-quotes then returns executable payload (`tx`, `order`, or `permit-tx`) - [Assemble Permit2](https://swagg-neon.vercel.app/assemble): `POST {signature, context}` — second leg for `permit-tx` builds - [Submit async order](https://swagg-neon.vercel.app/submit): `POST` authed order submission (e.g. Fusion); venue/chain validated server-side ## Optional - [Sitemap](https://swagg-neon.vercel.app/sitemap.xml): Public URL index for crawlers - [robots.txt](https://swagg-neon.vercel.app/robots.txt): Crawl rules and AI bot allowances