TamaraRingas / Misc-Bonding-Curves

WIP - An assortment of Bonding Curves for ERC20 tokens that have optional vesting schedules which transition into Uniswap V3 Liquidity Pools.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Misc Bonding Curve Smart Contracts

Get Started

Install Foundry

curl -L https://foundry.paradigm.xyz | bash

Update Foundry

foundryup

Install Submodules

git submodule update --init --recursive

Formatter and Linter

Run yarn to install package.json which includes our formatter and linter. We will switch over to Foundry's sol formatter and linter once released.

Set your environment variables

Check .env.example to see some of the environment variables you should have set in .env in order to run some of the commands.

Compile Project

forge build

Run Project Tests

forge test

Run Project Fork Tests

forge test --fork-url <your_rpc_url>>

Build Troubleshooting Tips

In case you run into an issue of forge not being able to find a compatible version of solidity compiler for one of your contracts/scripts, you may want to install the solidity version manager svm. To be able to do so, you will need to have Rust installed on your system and with it the acompanying package manager cargo. Once that is done, to install svm run the following command:

cargo install svm-rs

To list the available versions of solidity compiler run:

svm list

Make sure the version you need is in this list, or choose the closest one and install it:

svm install "0.7.6"

About

WIP - An assortment of Bonding Curves for ERC20 tokens that have optional vesting schedules which transition into Uniswap V3 Liquidity Pools.

License:MIT License


Languages

Language:Solidity 100.0%