Skip to content

drift-labs/protocol-v2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Drift Protocol v2

Docs Discord Chat License

Drift Protocol v2

This repository provides open source access to Drift V2's Typescript SDK, Solana Programs, and more.

Integrating Drift? Go here

SDK Guide

SDK docs can be found here

Example Bot Implementations

Example bots (makers, liquidators, fillers, etc) can be found here

Building Locally

Note: If you are running the build on an Apple computer with an M1 chip, please set the default rust toolchain to stable-x86_64-apple-darwin

rustup default stable-x86_64-apple-darwin

Compiling Programs

# build v2
anchor build
# install packages
yarn
# build sdk
cd sdk/ && yarn && yarn build && cd ..

Running Rust Test

cargo test

Running Javascript Tests

bash test-scripts/run-anchor-tests.sh

Development (with devcontainer)

We've provided a devcontainer Dockerfile to help you spin up a dev environment with the correct versions of Rust, Solana, and Anchor for program development.

Build the container and tag it drift-dev:

cd .devcontainer && docker build -t drift-dev .

Open a shell to the container:

# Find the container ID first
docker ps

# Then exec into it
docker exec -it <CONTAINER_ID> /bin/bash

Alternatively use an extension provided by your IDE to make use of the dev container. For example on vscode/cursor:

1. Press Ctrl+Shift+P (or Cmd+Shift+P on Mac)
2. Type "Dev Containers: Reopen in Container"
3. Select it and wait for the container to build
4. The IDE terminal should be targeting the dev container now

Use the dev container as you would a local build environment:

# build program
anchor build

# update idl
anchor build -- --features anchor-test && cp target/idl/drift.json sdk/src/idl/drift.json

# run cargo tests
cargo test

# run typescript tests
bash test-scripts/run-anchor-tests.sh

Bug Bounty

Information about the Bug Bounty can be found here

About

On-chain perpetuals dex with multiple liquidity mechanisms

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages