Smart contracts for access control and token gated Status communities.
Go to file
Andrea Franz e52eff0254
Merge pull request #6 from status-im/refactor/foundry-template
refactor: move project to foundry template and introduce tests
2023-09-19 10:12:24 +02:00
.github refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
contracts refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
lib refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
script refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
specs refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
test refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
.editorconfig refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
.env.example refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
.gas-snapshot refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
.gitattributes refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
.gitignore refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
.gitmodules refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
.prettierignore refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
.solhint.json refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
PROPERTIES.md refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
README.md refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
codecov.yml refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
foundry.toml refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
package.json refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
pnpm-lock.yaml refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
prettierrc.yml refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
remappings.txt refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
slither.config.json refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00
specs.sh refactor: move project to foundry template and introduce tests 2023-09-08 12:36:20 +02:00

README.md

Communities Contracts Github Actions Foundry

Usage

This is a list of the most frequently needed commands.

Build

Build the contracts:

$ forge build

Clean

Delete the build artifacts and cache directories:

$ forge clean

Compile

Compile the contracts:

$ forge build

Coverage

Get a test coverage report:

$ forge coverage

Deploy

Deploy to Anvil:

$ forge script script/DeployOwnerToken.s.sol --broadcast --fork-url http://localhost:8545

For this script to work, you need to have a MNEMONIC environment variable set to a valid BIP39 mnemonic.

For instructions on how to deploy to a testnet or mainnet, check out the Solidity Scripting tutorial.

Format

Format the contracts:

$ forge fmt

Gas Usage

Get a gas report:

$ forge test --gas-report

Lint

Lint the contracts:

$ pnpm lint

Test

Run the tests:

$ forge test