RareRedirect is an experiment that allows users to decide where a website should redirect based on whether they are willing to pay more than the previous redirect purchaser. The contract is very simple. None of the code is audited, so proceed at your own risk. If you notice any bugs or have suggestions for improvements, please open an issue. I'm always open to feedback.
Validation for URL correctness occurs on the frontend site. The current site to implement this experiment is janetyellen.com.
npm i
npm run compile
In one terminal run npx hardhat node
Then in another run npm run test
Notes:
- The gas usage table may be incomplete (the gas report currently needs to run with the
--network localhost
flag; see below).
In one terminal run npx hardhat node
Then in another run npm run test -- --network localhost
Notes:
- When running with this
localhost
option, you get a gas report but may not get good callstacks - See here for how to configure the gas usage report.
npm run coverage
Notes:
- running a coverage report currently deletes artifacts, so after each coverage run you will then need to run
npx hardhat clean
followed bynpm run build
before re-running tests
Create/modify network config in hardhat.config.ts
and add API key and private key, then run:
npx hardhat run --network <NETWORK> scripts/deploy.ts
Using the hardhat-etherscan plugin, add Etherscan API key to hardhat.config.ts
, then run:
npx hardhat verify --network <NETWORK> <DEPLOYED ADDRESS>