Skip to content

0xhiroshi/contracts-exchange-v1

 
 

Repository files navigation

@looksrare/contracts-exchange-v1

Description

This project contains all smart contracts used for the current LooksRare exchange ("v1"). This includes:

  • core exchange contract
  • libraries
  • currency manager contract
  • execution manager and strategy contracts
  • royalty-related contracts
  • transfer managers and selector contracts

It also contains a peripheral contract (OrderValidatorV1) that is used to verify the validity of (maker) orders.

Installation

# Yarn
yarn add @looksrare/contracts-exchange-v1

# NPM
npm install @looksrare/contracts-exchange-v1

NPM package

The NPM package contains the following:

  • Solidity smart contracts (".sol")
  • ABI files (".json")

Documentation

The documentation for the exchange smart contracts is available here.

About this repo

Structure

It is a hybrid Hardhat repo that also requires Foundry to run Solidity tests powered by the ds-test library.

To install Foundry, please follow the instructions here.

Run tests

  • TypeScript tests are included in the test folder at the root of this repo.
  • Solidity tests are included in the test folder in the contracts folder.

Example of Foundry/Forge commands

forge build
forge test
forge test -vv
forge tree

Example of Hardhat commands

npx hardhat accounts
npx hardhat compile
npx hardhat clean
npx hardhat test
npx hardhat node
npx hardhat help
REPORT_GAS=true npx hardhat test
npx hardhat coverage
npx hardhat run scripts/deploy.ts
TS_NODE_FILES=true npx ts-node scripts/deploy.ts
npx eslint '**/*.{js,ts}'
npx eslint '**/*.{js,ts}' --fix
npx prettier '**/*.{json,sol,md}' --check
npx prettier '**/*.{json,sol,md}' --write
npx solhint 'contracts/**/*.sol'
npx solhint 'contracts/**/*.sol' --fix

Release

  • Create a Personal access token (Don't change the default scope)
  • Create an .env (copy .env.template) and set your GitHub personal access token.
  • yarn release will run all the checks, build, and publish the package, and publish the GitHub release note.

About

LooksRare exchange contracts (v1)

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 58.0%
  • Solidity 41.8%
  • Other 0.2%