Skip to content

tokamak-network/trh-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tokamak Rollup Hub SDK

Introduction

The tokamak rollup hub SDK allows anyone to quickly deploy customized and autonomous Layer 2 Rollups on the Ethereum network.

Set up the SDK

  • You must have go(1.20+ < 1.23) installed on your machine and 1.22.6 would be highly recommended. (Install go from here)

  • Clone the repository

    git clone https://github.com/tokamak-network/trh-sdk.git
  • Build the SDK

    go build
  • Or you can install the SDK by using go install

    go install github.com/tokamak-network/trh-sdk@latest
    

    Then check the installation

    trh-sdk version
    

    Note: After building, all SDK commands will be available in the trh-sdk directory. Make sure you are in this directory when running commands.

Local-Devnet deployment

  • Deploy

    trh-sdk deploy

    If you successfully deploy the local-devnet, you will get the following output:

      ...
      Container ops-bedrock-l1-1  Running
      Container ops-bedrock-l2-1  Running
      Container ops-bedrock-op-node-1  Running
      Container ops-bedrock-op-challenger-1  Recreate
      Container ops-bedrock-op-challenger-1  Recreated
      Container ops-bedrock-op-challenger-1  Starting
      Container ops-bedrock-op-challenger-1  Started
      ✅ Devnet up!
  • Destroy

    trh-sdk destroy

    If you successfully destroy the local-devnet, you will get the following output:

      Destroying the devnet network...
      ✅ Destroyed the devnet network successfully!

Testnet/Mainnet deployment

Prerequisites

Deploy L1 contracts

We only need to run this script on the testnet and mainnet network

The first step is to deploy the L1 contracts to the L1 network. The output of this step is we generate the rollup, genesis file, and deployment file.

→ We will create the settings.json file after deploying successfully to reuse in the deploy infra step.

settings.json file looks like:

{
  "admin_private_key": "012347185fc76118346627e44f8a7e9318dad70544711001...",
  "sequencer_private_key": "eb845bb0aba96394a99bd44163471ea0305cd4880280e0f...",
  "batcher_private_key": "12399af5811bf105f8731d848874d5b7c4be3f69...",
  "proposer_private_key": "9461b46f763b2e68077ea87e76c537bc7488432...",
  "deployment_path": "/home/user/tokamak/trh-sdk/tokamak-thanos/packages/tokamak/contracts-bedrock/deployments/11155111-deploy.json",
  "l1_rpc_url": "https://sepolia.rpc.tokamak.network",
  "l1_rpc_provider": "",
  "stack": "thanos",
  "network": "testnet",
  "enable_fraud_proof": false,
  "k8s_namespace": "",
  "helm_release_name": "",
  "l2_rpc_url": ""
}
./trh-sdk deploy-contracts --network [] --stack []

Example:

./trh-sdk deploy-contracts --network testnet --stack thanos

Deploy stack

./trh-sdk deploy

→ If the `settings.json file exists, we will deploy the stack by the network and stack written on the config file. And if the settings.json file doesn't exist. We will deploy the local-devnet network and the stack is Thanos by default.

Destroy the stack

To terminate the network, we can run the command looks like:

./trh-sdk destroy

Same as the deploy infra command, this command looks the config files located at the current directory to choose the network and stack

Install the plugin

./trh-sdk install bridge

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages