#amm #ethereum #mev #maker

amms

A library to interact with automated market makers across EVM chains

5 releases

0.6.3 Aug 21, 2024
0.6.2 Aug 18, 2024
0.6.1 Jul 28, 2023
0.6.0 Jul 28, 2023
0.1.0 Jul 22, 2023

#3 in #mev

Download history 243/week @ 2024-08-15 71/week @ 2024-08-22 10/week @ 2024-08-29 19/week @ 2024-09-05 36/week @ 2024-09-12 45/week @ 2024-09-19 68/week @ 2024-09-26 17/week @ 2024-10-03 34/week @ 2024-10-10 43/week @ 2024-10-17 12/week @ 2024-10-24 21/week @ 2024-10-31 18/week @ 2024-11-07 24/week @ 2024-11-14 30/week @ 2024-11-21 5/week @ 2024-11-28

83 downloads per month

MIT license

270KB
6.5K SLoC

Rust 5.5K SLoC // 0.0% comments Solidity 1K SLoC // 0.1% comments

amms-rs Github Actions Chat

amms-rs is a Rust library to interact with automated market makers across EVM chains.

This lib provides functionality to discover, sync, filter, and interact with a variety of AMMs. This library also provides functionality to keep a state space synced, abstracting logic to handle chain reorgs, maintaining a state change cache and more.

amms-rs was built with modularity in mind, making it quick and easy to add a new AMM variant by implementing the AutomatedMarketMaker trait. For a full walkthrough on how to quickly implement a new AMM, check out addingAnAMM.md.

Supported AMMs

AMM Status
UniswapV2 Pools
UniswapV3 Pools
ERC4626 Vaults
Izumi Pools 🟨
Curve Pools
Balancer Pools
Bancor Pools

Dependencies

~36–51MB
~1M SLoC