# Uniswap

> Onchain automated market maker for token swaps and liquidity, with v4 hooks for customizable pools, the Universal Router for trade routing, and TypeScript SDKs for integration.

- Readiness score: **94/100** (score.v2)
- Integration difficulty: medium
- Chains: ethereum, arbitrum-one, base, optimism, polygon, bsc
- Categories: defi, dex, amm, liquidity
- Last verified: 2026-06-02 by composewith.eth research (developers.uniswap.org live-verified via WebFetch 2026-06-02; v4 hooks, Universal Router, SDKs, GitHub org Uniswap confirmed) (confidence: high)

## Resources

- docs: https://developers.uniswap.org/
- sdk: https://github.com/Uniswap
- template: https://developers.uniswap.org/

## Good for

- in-app token swaps
- providing or sourcing onchain liquidity
- custom pool logic via v4 hooks

## Avoid for

- off-chain or order-book-style matching

## Capabilities

### Token swaps via Universal Router (production-ready)
Best for: in-app swaps, trade routing

### v4 pools with hooks (production-ready)
Best for: custom pool behavior
- Hook contracts are powerful and must be audited; a malicious or buggy hook can break a pool.

### Liquidity provision (v3/v4) (production-ready)
Best for: concentrated liquidity strategies

## Composes with

- **chainlink** (oracle_and_price_data; supports) — Chainlink can provide external price references, automation, and cross-chain services around swap and liquidity products.
- **pyth** (oracle_and_price_data; supports) — Pyth can provide low-latency market data for trading and liquidity interfaces.
- **the-graph** (indexing_and_data; supports) — The Graph can index swaps, pools, liquidity events, and app-specific DeFi analytics.

## Per-chain support

### bsc (production-ready)
- Docs: https://docs.uniswap.org/contracts/v3/reference/deployments/bnb-deployments
- Use BNB Smart Chain id 56 in your viem/ethers and SDK config; the v3 contract set is deployed and listed in the official deployments reference.
- Limitations: BSC liquidity skews toward BSC-native DEXs (e.g. PancakeSwap); verify pool depth for your pairs before relying on Uniswap routing.
- Verified 2026-06-10 (source: https://docs.uniswap.org/contracts/v3/reference/deployments/bnb-deployments)

---
Canonical: https://composewith.eth/protocols/uniswap · JSON: https://composewith.eth/protocols/uniswap.json
