Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/looksrare/contracts-exchange-v1
LooksRare exchange contracts (v1)
https://github.com/looksrare/contracts-exchange-v1
ethereum looksrare solidity
Last synced: 7 days ago
JSON representation
LooksRare exchange contracts (v1)
- Host: GitHub
- URL: https://github.com/looksrare/contracts-exchange-v1
- Owner: LooksRare
- License: mit
- Created: 2022-04-12T03:30:26.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2023-10-27T22:52:48.000Z (about 1 year ago)
- Last Synced: 2024-05-28T21:35:42.567Z (8 months ago)
- Topics: ethereum, looksrare, solidity
- Language: TypeScript
- Homepage:
- Size: 317 KB
- Stars: 58
- Watchers: 4
- Forks: 39
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
# @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 contractsIt also contains a peripheral contract (`OrderValidatorV1`) that is used to verify the validity of (maker) orders.
## Installation
```shell
# 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](https://docs.looksrare.org/developers/category/exchange-contracts).
## About this repo
### Structure
It is a hybrid [Hardhat](https://hardhat.org/) repo that also requires [Foundry](https://book.getfoundry.sh/index.html) to run Solidity tests powered by the [ds-test library](https://github.com/dapphub/ds-test/).
> To install Foundry, please follow the instructions [here](https://book.getfoundry.sh/getting-started/installation.html).
### 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
```shell
forge build
forge test
forge test -vv
forge tree
```### Example of Hardhat commands
```shell
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](https://github.com/settings/tokens/new?scopes=repo&description=release-it) (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.