#ethereum #amm #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 8/week @ 2024-07-13 35/week @ 2024-07-20 26/week @ 2024-07-27 11/week @ 2024-08-03 7/week @ 2024-08-10 289/week @ 2024-08-17 25/week @ 2024-08-24 13/week @ 2024-08-31 24/week @ 2024-09-07 39/week @ 2024-09-14 54/week @ 2024-09-21 59/week @ 2024-09-28 8/week @ 2024-10-05 48/week @ 2024-10-12 30/week @ 2024-10-19 4/week @ 2024-10-26

94 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

~35–50MB
~1M SLoC