Skip to content

Opinionated Rust implementation of the Uniswap V4 SDK with a focus on readability and performance

License

Notifications You must be signed in to change notification settings

shuhuiluo/uniswap-v4-sdk-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Uniswap V4 SDK Rust

Rust CI docs.rs crates.io

A Rust SDK for building applications on top of Uniswap V4. Rewrite of the TypeScript V4 SDK.

It is feature-complete with matching unit tests.

Features

  • Opinionated Rust implementation of the Uniswap V4 SDK with a focus on readability and performance

  • Usage of alloy-rs types

  • Consistent API and types with the V3 SDK and SDK Core

  • An extensions feature for additional functionalities related to Uniswap V4, including:

Supported Rust Versions (MSRV)

The current MSRV (minimum supported rust version) is 1.85.

Getting started

Add the following to your Cargo.toml file:

uniswap-v4-sdk = { version = "0.9.0", features = ["extensions", "std"] }

Usage

The package structure follows that of the TypeScript SDK, but with snake_case instead of camelCase.

For easy import, use the prelude:

use uniswap_v4_sdk::prelude::*;

Note on no_std

By default, this library does not depend on the standard library (std). However, the std feature can be enabled.

Contributing

Contributions are welcome. Please open an issue if you have any questions or suggestions.

Testing

Tests are run with

cargo test

Linting

Linting is done with clippy and rustfmt. To run the linter, use:

cargo clippy --all-targets --all-features -- -D warnings
cargo fmt --all -- --check

License

This project is licensed under the MIT License.

Acknowledgements

This project is inspired by and adapted from the following projects:

About

Opinionated Rust implementation of the Uniswap V4 SDK with a focus on readability and performance

Topics

Resources

License

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •  

Languages