Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 40 additions & 13 deletions pages/stack/dev-net.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ anyone to modify or deploy the stack in any configuration you want.
| ------------------------------------------------- | -------- | --------------------- |
| [docker](https://docs.docker.com/engine/install/) | `^27` | `docker --version` |
| [kurtosis](https://docs.kurtosis.com/install/) | `^1.3.0` | `kurtosis version` |
| [cast](https://book.getfoundry.sh/cast/) | `^1.0.0` | `cast --version` |

### Notes on Specific Dependencies

Expand Down Expand Up @@ -75,7 +76,9 @@ ethereum_package:
Now that you've configured your network, you can start it up using the Kurtosis CLI. Run the command below:

```bash
kurtosis run github.com/ethpandaops/optimism-package --args-file https://raw.githubusercontent.com/ethpandaops/optimism-package/main/network_params.yaml
kurtosis run github.com/ethpandaops/optimism-package \
--args-file https://raw.githubusercontent.com/ethpandaops/optimism-package/main/network_params.yaml \
--enclave op-devnet
```

This command will start up your network and deploy the OP Stack based on the ethpandaops configuration. The command will
Expand All @@ -84,9 +87,9 @@ the one below:

```
INFO[2025-02-25T02:10:37Z] =====================================================
INFO[2025-02-25T02:10:37Z] || Created enclave: proud-crater ||
INFO[2025-02-25T02:10:37Z] || Created enclave: op-devnet ||
INFO[2025-02-25T02:10:37Z] =====================================================
Name: proud-crater
Name: op-devnet
UUID: eb959a72177b
Status: RUNNING
Creation Time: Tue, 25 Feb 2025 02:07:56 UTC
Expand Down Expand Up @@ -159,29 +162,53 @@ At this point your chain is up and running. Let's move on to the next section to
## Interact with your network

You now have a fully functioning OP Stack Rollup. You can connect your wallet to this chain the same way you'd connect
your wallet to any other EVM chain. You can find your node's RPC URL by running `kurtosis enclave inspect <enclave name>`.
Your enclave name is outputted at the end of the `kurtosis run` command above. The RPC url is the `rpc` port name in any
of the execution client services identified by `op-el`.
your wallet to any other EVM chain. You can find your node's RPC URL by running `kurtosis enclave inspect op-devnet`.
The RPC url is the `rpc` port name in any of the execution client services identified by `op-el`.

### Depositing funds onto your network

Your network was configured to pre-fund development addresses using the `test test test test test test test test test test test junk`
mnemonic. To get ETH onto your L2, you import one of the private keys from that mnemonic into your favorite wallet or use
a CLI tool like `cast`. For the purposes of this tutorial, we'll use `cast` and assume you want to use the first address
generated by that mnemonic.
Your network was configured to pre-fund development addresses, you can find the full list of available pre-fund accounts from
[here](https://github.com/ethpandaops/ethereum-package/blob/main/src/prelaunch_data_generator/genesis_constants/genesis_constants.star).
To get ETH onto your L2, you import one of the private keys from that list into your favorite wallet or use a CLI tool like `cast`.
For the purposes of this tutorial, we'll use `cast` and assume you want to use the first address [0x8943545177806ED17B9F23F0a21ee5948eCaa776](https://github.com/ethpandaops/ethereum-package/blob/v4.0.0/src/prelaunch_data_generator/genesis_constants/genesis_constants.star#L10-L14).

To move ETH onto your L2, run the following command. Make sure to replace the values in angle brackets with real values:

```bash
cast send --mnemonic 'test test test test test test test test test test test junk' --mnemonic-path "m/44'/60'/0'/0/0" \
--to "<standard bridge address>" --amount "<amount in ETH>eth" --rpc-url "http://127.0.0.1:<rpc port of el-1-geth-teku service>"
cast send "<standard bridge address>" --private-key bcdf20249abf0ed6d944c0288fad489e33f66b3960d9e6229c1cd214ed3bbe31 \
--value "<amount in ETH>ether" --rpc-url "http://127.0.0.1:<rpc port of el-1-geth-teku service>"
```

The output should looks like below:


```
blockHash 0xf6c18d85ba89b4b1e6060ddf744d8d9084dbb3720e2a2a854627a1b1b7a294ba
blockNumber 388
contractAddress
cumulativeGasUsed 21000
effectiveGasPrice 1000000007
from 0x8943545177806ED17B9F23F0a21ee5948eCaa776
gasUsed 21000
logs []
logsBloom 0x000000000000000000000000000000000... # truncated
root
status 1 (success)
transactionHash 0x268f98f883efe9c8f9ecc7542a9c8af51869118cfce06e775683f5b4aec2681d
transactionIndex 0
type 2
blobGasPrice
blobGasUsed
authorizationList
to <standard bridge address>
```


Wait \~30 seconds, then check your balance on L2 by running the following command:

```bash
export ETH_RPC_URL="http://127.0.0.1:<rpc port of el-1-geth-teku service>"
export ADDRESS="0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
export ADDRESS="0x8943545177806ED17B9F23F0a21ee5948eCaa776"
cast balance "$ADDRESS"
```

Expand Down