a51d6e8d65 | ||
---|---|---|
assert-owner | ||
cli | ||
common | ||
context | ||
dex | ||
docker | ||
docs | ||
lockup | ||
pool | ||
registry | ||
scripts | ||
solana-client-gen | ||
.gitignore | ||
.travis.yml | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
Makefile | ||
README.md | ||
bpf-sdk-install.sh | ||
do.sh |
README.md
Program Deployments
Program | Devnet | Mainnet Beta |
---|---|---|
DEX | F9b23Ph1JdBev2fULXTZLzaxVh2nYVdMVq9CTEaEZrid |
EUqojwWA2rd19FZrzeBncJsm38Jm1hEhE3zsmX3bRc2o |
Registry | FigXetJcXogqm94qfmyKWy6U5KJAwtxSgJMjUHercVQp |
Gw1XNGbSnx7PJcHTTuxxhWfkjjPmq29Qkv1hWbVFnrDp |
Lockup | CiNaYvdnQ42BNdbKvvAapHxiP18pvc3Vk5WuZ59ia64x |
6GSn1woRF541HaiEWqNofYn8quzJuRBPi1nwoho8zNnh |
Crank Rewards | EXzpf5GBfUQkwLeLEJXLmVKxGpxyMQWxpudYxogW4ad8 |
8xYo1X6uw7SBngXgPzib8jghWb8BhiiVxv5yV799Tw3G |
Note
- Serum is in active development so all APIs and protocols are subject to change.
- The code is unaudited. Use at your own risk.
Contributing
Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
rustup component add rustfmt
On Linux systems you may need to install additional dependencies. On Ubuntu,
sudo apt-get install -y pkg-config build-essential python3-pip jq
Install Solana
curl -sSf https://raw.githubusercontent.com/solana-labs/solana/v1.4.14/install/solana-install-init.sh | sh -s - v1.4.14
export PATH="/home/ubuntu/.local/share/solana/install/active_release/bin:$PATH"
Download the source
git clone https://github.com/project-serum/serum-dex.git
Install the BPF SDK
./do.sh update
Build, deploy, and test programs
See individual crates for documentation. For example, to build the dex see its README.
Running a local Solana cluster
The easiest way to run a local cluster is to run the docker container provided by Solana. Instructions can be found here. For local development, however, it's often convenient to build and run a validator from source.
Directories
assert-owner
: Solana utility program for checking account ownership.cli
: Serum command line interface.common
: Common rust utilities.context
: Global environment used by Serum crates, read from a configuration file.dex
: Serum DEX program and client utility.docker
: Docker image definitions.lockup
: Serum Lockup program and clients.pool
: Serum pool protocol.registry
: Serum staking registry and client.scripts
: Bash scripts for development.solana-client-gen
: Proc macro for generating Rust clients from instruction definitions.