An open API service indexing awesome lists of open source software.

https://github.com/outdoteth/putty-v2

v2 otc options for NFTs and ERC20s
https://github.com/outdoteth/putty-v2

Last synced: 2 months ago
JSON representation

v2 otc options for NFTs and ERC20s

Awesome Lists containing this project

README

        

# Putty V2

An order-book based american options market for NFTs and ERC20s.
This project uses the foundry framework for testing/deployment.
There are specification files going into further detail [here](./spec/).

## Getting started

1. Install `foundry`, refer to [foundry](https://github.com/foundry-rs/foundry)
2. Install `nodejs`, refer to [nodejs](https://nodejs.org/en/)
3. Install `yarn`, `npm install --global yarn`

Clone the repo and then run:

```
yarn
forge install
forge test --gas-report
```

## Tests

There is a full test-suite included in `./test/`. There is also a differential test suite included in `./test/differential/`. By default the differential tests are disabled. To run them follow the instructions in the README in `./test/differential/`.

```
forge test --gas-report
```

## Static analysis

We use [slither](https://github.com/crytic/slither) for static analysis.

Installation:

```
pip3 install slither-analyzer
pip3 install solc-select
solc-select install 0.8.13
solc-select use 0.8.13
```

Then to run:

```
slither ./src/PuttyV2.sol --solc-args "--optimize --optimize-runs 100000"
```