Skip to content

AbstractSDK/astroport-core

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

863 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Astroport Core

codecov

Multi pool type automated market-maker (AMM) protocol powered by smart contracts on the Terra blockchain.

Contracts diagram

contract diagram

General Contracts

Name Description
factory Pool creation factory
pair Pair with x*y=k curve
pair_stable Pair with stableswap invariant curve
pair_stable_bluna Pair with stableswap invariant curve handling bLUNA rewards for LPs
token CW20 (ERC20 equivalent) token implementation
router Multi-hop trade router
oracle TWAP oracles for x*y=k pool types
whitelist CW1 whitelist contract

Tokenomics Contracts

Tokenomics related smart contracts are hosted on ../contracts/tokenomics.

Name Description
generator Rewards generator for liquidity providers
generator_proxy_to_mirror Rewards generator proxy for liquidity providers
maker Fee collector and swapper
staking xASTRO staking contract
vesting ASTRO distributor for generator rewards
xastro_token xASTRO token contract

Building Contracts

You will need Rust 1.64.0+ with wasm32-unknown-unknown target installed.

You can compile each contract:

Go to contract directory and run

cargo wasm
cp ../../target/wasm32-unknown-unknown/release/astroport_token.wasm .
ls -l astroport_token.wasm
sha256sum astroport_token.wasm

You can run tests for all contracts

Run the following from the repository root

cargo test

For a production-ready (compressed) build:

Run the following from the repository root

./scripts/build_release.sh

The optimized contracts are generated in the artifacts/ directory.

Deployment

You can find versions and commits for actually deployed contracts here.

Docs

Docs can be generated using cargo doc --no-deps

Bug Bounty

The contracts in this repo are included in a bug bounty program.

Dependencies (TODO)

The dependencies need to be cleaned up because there are some patches in the main Cargo.toml

About

Astroport DEX core contracts

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Rust 96.4%
  • TypeScript 3.5%
  • Shell 0.1%