@@ -55,16 +55,15 @@ Is on Gitpod: false
5555## Generate your App {#generate-your-app}
5656
5757``` bash
58- ignite s chain gm --address-prefix gm
58+ ignite scaffold chain gm --address-prefix gm
5959cd gm
6060```
6161
62- ``` bas
6362Install a specific version of ignite to use rollkit
64- ```
6563
6664``` bash
6765ignite app install -g github.com/ignite/apps/rollkit@9d51c52305be37356a1ecadab8733b77842e1c37
66+ [TODO: Update this to a valid fixed version]
6867```
6968
7069Install your app locally:
@@ -73,14 +72,27 @@ Install your app locally:
7372make install
7473```
7574
75+ Then add it to your blockchain and build your chain and initialise it
76+
77+ ``` bash
78+ ignite rollkit add
79+ ignite chain build --skip-proto
80+ ignite rollkit init
81+ ```
82+
83+ This will create a ` ~/.gm ` folder with all the necessary files to run a chain.
84+
85+ It will also initialize 2 accounts ` alice ` and ` bob ` :
86+
87+
7688## 🚀 Starting your rollup {#start-your-rollup}
7789
7890Now that we have our gm app generated and installed, we can launch our GM rollup along with the local DA by running the following command:
7991
8092First lets start the local DA network:
8193
8294``` bash
83- curl -sSL https://rollkit.dev/install-local-da.sh | bash -s {{constants.localDALatestTag}}
95+ curl -sSL https://rollkit.dev/install-local-da.sh | bash
8496```
8597
8698you should see logs like:
@@ -100,30 +112,37 @@ gmd start --rollkit.node.aggregator
100112You should see an output like this:
101113
102114``` bash
103- 5:02PM INF Rollkit node run loop launched in background goroutine module=server
104- 5:02PM INF Attempting to start Rollkit node run loop module=server
105- 5:02PM INF serving HTTP listen address=[::]:26657 module=rollkit
106- 5:02PM INF Started RPC server addr=127.0.0.1:7331 module=rollkit
107- 5:02PM INF starting P2P client module=rollkit
108- 5:02PM INF listening on address=/ip4/10.36.65.125/tcp/7676/p2p/12D3KooWCZ4oCNDkxisUWD9CbB5yEmSmjaTEtLLySk3Sccy4Vb8m module=p2p
109- 5:02PM INF listening on address=/ip4/127.0.0.1/tcp/7676/p2p/12D3KooWCZ4oCNDkxisUWD9CbB5yEmSmjaTEtLLySk3Sccy4Vb8m module=p2p
110- 5:02PM INF no peers - only listening for connections module=p2p
111- 5:02PM INF working in aggregator mode block time=1s module=rollkit
112- 5:02PM INF Reaper started interval=1000 module=Reaper
113- 5:02PM INF Using pending block height=1 module=BlockManager
114- 5:02PM INF Executing block height=1 module=rollkit num_txs=0 timestamp=2025-04-28T11:21:24-04:00
115- 5:02PM INF Block executed successfully appHash=6AE75B65CDFE504876AC392554E16065C7C3699FFC99E6C4AA5FEB13B49CFB2D height=1 module=rollkit
116- 5:02PM ERR failed to start syncer after initializing the store: error getting latest head during Start: header: not found module=rollkit
117- 5:02PM ERR failed to start syncer after initializing the store: error getting latest head during Start: header: not found module=rollkit
118- 5:02PM INF Attempting to start executor (Adapter.Start) module=server
119- 5:02PM INF Executor started successfully module=server
120- 5:02PM INF Waiting for services to complete... module=server
121- 5:02PM INF starting API server... address=tcp://0.0.0.0:1317 module=api-server
122- 5:02PM INF serve module=api-server msg=" Starting RPC HTTP server on [::]:1317"
123- 5:02PM INF starting gRPC server... address=localhost:9090 module=grpc-server
124- 5:02PM INF Creating empty block height=2 module=BlockManager
125- 5:02PM INF Executing block height=2 module=rollkit num_txs=0 timestamp=2025-05-13T17:02:14-04:00
126- 5:02PM INF Block executed successfully appHash=CACB5B55477E8813D93A29CF25BA5DB8AD4A51992D96A72CF9A4E83D47F4FAAA height=2 module=rollkit
115+ 2:50PM INF creating new client module=rollkit namespace=
116+ 2:50PM INF No state found in store, initializing new state module=BlockManager
117+ 2:50PM INF Initializing chain chainID=gm genesisTime=2025-06-26T12:50:11Z initialHeight=1 module=rollkit
118+ 2:50PM INF InitChain chainID=gm initialHeight=1 module=baseapp
119+ 2:50PM INF initializing blockchain state from genesis.json module=baseapp
120+ 2:50PM INF chain initialized successfully appHash=E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855 module=rollkit
121+ 2:50PM INF using default mempool ttl MempoolTTL=25 module=BlockManager
122+ 2:50PM INF service start impl=EventBus module=events msg=" Starting EventBus service"
123+ 2:50PM INF service start impl=PubSub module=pubsub msg=" Starting PubSub service"
124+ 2:50PM INF service start impl=IndexerService module=txindex msg=" Starting IndexerService service"
125+ 2:50PM INF rollkit node run loop launched in background goroutine module=server
126+ 2:50PM INF serving HTTP listen address=[::]:26657 module=rollkit
127+ 2:50PM INF starting P2P client module=rollkit
128+ 2:50PM INF started RPC server addr=127.0.0.1:7331 module=rollkit
129+ 2:50PM INF listening on address=/ip4/127.0.0.1/tcp/7676/p2p/12D3KooWPN1jqkgZcuF8UMZEa7nSjoF7zPmGHRrCDVrXrpfTLpfJ module=p2p
130+ 2:50PM INF listening on address=/ip4/192.168.0.54/tcp/7676/p2p/12D3KooWPN1jqkgZcuF8UMZEa7nSjoF7zPmGHRrCDVrXrpfTLpfJ module=p2p
131+ 2:50PM INF no peers - only listening for connections module=p2p
132+ 2:50PM INF working in aggregator mode block time=1s module=rollkit
133+ 2:50PM INF Reaper started interval=1000 module=Reaper
134+ 2:50PM INF using pending block height=1 module=BlockManager
135+ 2:50PM INF Executing block height=1 module=rollkit num_txs=0 timestamp=2025-06-26T14:50:11+02:00
136+ 2:50PM INF block executed successfully appHash=678DE6BBA6E23B000DC5AC86B60245E6EAC503C5C7085495F3B71B22A762EB19 height=1 module=rollkit
137+ 2:50PM INF indexed block events height=1 module=txindex
138+ 2:50PM INF attempting to start executor (Adapter.Start) module=server
139+ 2:50PM INF executor started successfully module=server
140+ 2:50PM INF creating empty block height=2 module=BlockManager
141+ 2:50PM INF Executing block height=2 module=rollkit num_txs=0 timestamp=2025-06-26T14:50:30+02:00
142+ 2:50PM INF starting API server... address=tcp://0.0.0.0:1317 module=api-server
143+ 2:50PM INF serve module=api-server msg=" Starting RPC HTTP server on [::]:1317"
144+ 2:50PM INF starting gRPC server... address=localhost:9090 module=grpc-server
145+ 2:50PM INF block executed successfully appHash=0B3973A50C42D0184FB86409FC427BD528A790FA45BA2C9E20FDF14A3628CEC8 height=2 module=rollkit
127146```
128147
129148Ignite has successfully launched the GM rollup and the local DA network. The GM rollup is running on port ` 7331 ` and the local DA network is running on port ` 7980 ` .
@@ -154,14 +173,14 @@ You should see an output like the following
154173For convenience we export two of our keys like this:
155174
156175``` bash
157- export KEY1 =gm17rpwv7lnk96ka00v93rphhvcqqztpn896q0dxx
158- export KEY2 =gm1r2udsh4za7r7sxvzy496qfazvjp04j4zgytve3
176+ export ALICE =gm17rpwv7lnk96ka00v93rphhvcqqztpn896q0dxx
177+ export BOB =gm1r2udsh4za7r7sxvzy496qfazvjp04j4zgytve3
159178```
160179
161180Now let's submit a transaction that sends coins from one account to another (don't worry about all the flags, for now, we just want to submit transaction from a high-level perspective):
162181
163182``` bash
164- gmd tx bank send $KEY2 $KEY1 42069stake --keyring-backend test --chain-id gm --fees 5000stake
183+ gmd tx bank send $BOB $ALICE 42069stake --keyring-backend test --chain-id gm --fees 5000stake
165184```
166185
167186You'll be prompted to accept the transaction:
@@ -204,7 +223,7 @@ txhash: 677CAF6C80B85ACEF6F9EC7906FB3CB021322AAC78B015FA07D5112F2F824BFF
204223Query balances after the transaction:
205224
206225``` bash
207- gmd query bank balances $KEY1
226+ gmd query bank balances $ALICE
208227```
209228
210229The receiver’s balance should show an increase.
@@ -221,7 +240,7 @@ pagination:
221240For the sender’s balance:
222241
223242``` bash
224- gmd query bank balances $KEY2
243+ gmd query bank balances $BOB
225244```
226245
227246Output:
0 commit comments