Skip to content

whetstoneresearch/doppler

Repository files navigation

Doppler

Test

This reposity contains the Doppler Protocol along with the Airlock contracts You can learn more about the technical aspects in the documentation.

Deployments

Latest deployments can be found here, which is a mirror of the documentation page. For historical deployments, you can check the deployments folder, which contains the deployment logs for each network.

Usage

Installation

First, you will need to install Foundry if you don't already have it. Then, run the following commands:

# Clone the repository
$ git clone git@github.com:whetstoneresearch/doppler.git

# Install the dependencies
$ make install

Testing

# Copy the example a .env file and fill the RPC endpoints
$ cp .env.example .env

# Then run the tests
$ make test

# You can also only run the invariant tests
$ make fuzz

# And even run longer fuzz tests
$ make deep-fuzz

Tests can be tweaked from the .env file, this is a nice way to try different testing scenarios without recompiling the contracts:

IS_TOKEN_0=FALSE
USING_ETH=FALSE
FEE=30

Deploying

Deployment scripts are provided to either deploy the whole protocol or only some specific modules, if you find them in the script folder. Note that you will also need to install Bun, as some internal scripts are written in TypeScript to update the deploment logs and the documentation.

Then make sure to set the required environment variables in the .env file before running the deployment scripts, once you're done, you can run the following command to deploy the contracts:

# Deploy the protocol on Base
make deploy-base

# Deploy the protocol on Unichain
make deploy-unichain

# Deploy the protocol on Ink
make deploy-ink

# Deploy V4 support on Base
make deploy-v4-base

# Deploy V4 support on Unichain
make deploy-v4-unichain

# Deploy V4 support on Ink
make deploy-v4-ink

About

Core contracts for the Doppler Protocol

Resources

License

Stars

Watchers

Forks

Packages

No packages published