Live DEX price comparison tool for $10K token swaps. Built to analyze protocol performance against competitors.
- Real-time Price Rankings: Compare execution prices across DEX protocols
- Single-hop Focus: Only direct swaps, no complex multi-hop routing
- $10K USD Swaps: Realistic trading amounts for institutional comparison
- 6 Major Pairs: WETH-USDT, WBTC-USDC, UNI-ETH, WETH-USDC, USDC-DAI, USDe-USDT
- 24h Historical Charts: Track ranking changes and competitive gaps
- Protocol Analysis: Identify where Uniswap leads or needs improvement
- Frontend: React 18 + TypeScript + Tailwind CSS
- Data: On-chain quotes + 0x API integration
- Charts: Recharts for 24h historical visualization
- Database: SQLite for historical data storage
- Deployment: Vite build system
-
Clone the repository
git clone <your-repo-url> cd uniswap-price-quotes
-
Install dependencies
npm install
-
Set up environment variables
cp .env.example .env
Edit
.envand add your API keys:ALCHEMY_API_KEY=your_alchemy_api_key_here VITE_ALCHEMY_API_KEY=your_alchemy_api_key_here ZEROX_API_KEY=your_0x_api_key_here
-
Start development server
npm run dev
-
Open in browser
http://localhost:5173
npm run build
npm run previewThe app requires two API services:
- Sign up at alchemy.com
- Create a new app for Ethereum Mainnet
- Copy your API key to
ALCHEMY_API_KEYandVITE_ALCHEMY_API_KEY
- Sign up at 0x.org
- Get your API key from the dashboard
- Add to
ZEROX_API_KEYin your.envfile
- Frontend: React app with TypeScript and Tailwind CSS
- Data Sources: Direct on-chain queries via Alchemy + 0x API for aggregated quotes
- Quote Sources: Uniswap V2, V3, V4, Sushiswap, Curve, 0x aggregation
- Update Frequency: Real-time quotes with 30-second refresh cycles
- Data Storage: Local SQLite for historical price tracking
- Uniswap V2, V3, V4
- Sushiswap
- Curve Finance
- Balancer (quotes for Balancer need improvements)
- 0x Protocol Aggregation (Matcha)
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
MIT open source license for community use