Skip to content

Commit d9906ef

Browse files
authored
Add TST info and Linea sepolia deploy instructions to readme (#50)
* Add TST info and Linea sepolia deploy instructions to readme * Add list of expected contracts to be deployed * Fix linting * README updates
1 parent 8a338f3 commit d9906ef

1 file changed

Lines changed: 25 additions & 8 deletions

File tree

README.md

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# waku-rlnv2-contract [![Github Actions][gha-badge]][gha] [![Foundry][foundry-badge]][foundry] [![License: MIT][license-badge]][license]
1+
# logos-messaging-rlnv2-contract [![Github Actions][gha-badge]][gha] [![Foundry][foundry-badge]][foundry] [![License: MIT][license-badge]][license]
22

33
[gha]: https://github.com/waku-org/waku-rlnv2-contract/actions
44
[gha-badge]: https://github.com/waku-org/waku-rlnv2-contract/actions/workflows/ci.yml/badge.svg
@@ -7,7 +7,7 @@
77
[license]: https://opensource.org/licenses/MIT
88
[license-badge]: https://img.shields.io/badge/License-MIT-blue.svg
99

10-
Waku's RLNv2 contracts, which include -
10+
logos-messaging's RLNv2 contracts, which include -
1111

1212
- LazyIMT, which allows the root of the chain to be accessible on-chain.
1313

@@ -68,31 +68,48 @@ $ forge coverage
6868

6969
#### Deploy to Anvil:
7070

71+
The following deployment will deploy several contracts required by the Logos Messaging RLNv2 contract and then deploy
72+
the Logos Messaging RLNv2 implementation contract as well as a proxy contract.
73+
7174
```sh
7275
$ TOKEN_ADDRESS=0x1122334455667788990011223344556677889900 forge script script/Deploy.s.sol --broadcast --rpc-url localhost --tc Deploy
7376
```
7477

75-
Replace the `TOKEN_ADDRESS` value by a token address you have deployed on anvil. A `TestToken` is available in
76-
`test/TestToken.sol` and can be deployed with
78+
Replace the `TOKEN_ADDRESS` value by a token address you have deployed on anvil. A `TestToken` implementation is
79+
available in `test/TestStableToken.sol` and can be deployed with a proxy using the following command (use the proxy
80+
address in the above command):
7781

7882
```sh
79-
forge script test/TestToken.sol --broadcast --rpc-url localhost --tc TestTokenFactory
83+
(ETH_FROM=$ETH_FROM forge script script/DeployTokenWithProxy.s.sol:DeployTokenWithProxy --broadcast -vvvv --rpc-url http://localhost --private-key $PRIVATE_KEY)
8084
```
8185

8286
For this script to work, you need to have a `MNEMONIC` environment variable set to a valid
8387
[BIP39 mnemonic](https://iancoleman.io/bip39/).
8488

85-
#### Deploy to Sepolia:
89+
#### Deploy to Linea Sepolia:
8690

8791
Ensure that you use the [cast wallet](https://book.getfoundry.sh/reference/cast/cast-wallet) to store private keys that
8892
will be used in deployments.
8993

9094
```sh
95+
$ export ETH_FROM=<your-wallet-address>
96+
$ export TOKEN_ADDRESS=<token-address>
9197
$ export RPC_URL=<rpc-url>
92-
$ export ACCOUNT=<account name in foundry keystore>
93-
$ pnpm deploy:sepolia
98+
$ export API_KEY_LINEASCAN=<api-key-lineascan>
99+
$ export API_KEY_ETHERSCAN=123 #(dummy value)
100+
$ export API_KEY_CARDONA=123 #(dummy value)
101+
$ export ACCOUNT=<account name in cast wallet>
102+
$ pnpm deploy:linea_sepolia
94103
```
95104

105+
This should deploy the following contracts:
106+
107+
- PoseidonT3: used by the logos-messaging-rlnv2-contract to generate the cryptographic commitments stored in the merkle
108+
tree
109+
- LinearPriceCalculator: calculator used by logos-messaging-rlnv2-contract to determine the price of a membership
110+
- WakuRlnV2: the implementation contract
111+
- WakuRlnV2 Proxy: the proxy contract pointing to the implementation contract
112+
96113
### Format
97114

98115
Format the contracts:

0 commit comments

Comments
 (0)