🚀 クイックスタート
ローカルのSunrise DAノード、最小限のRollkitベースのソブリンロールアップ、 およびサンプルdAppを20分以内に実行します。
このガイドでは、Sunrise Layerで構築するための完全な開発環境を設定する方法を説明します。次のことを学びます。
- ローカルのSunriseデータ可用性(DA)ノードを設定する
- Rollkitを使用して最小限のソブリンロールアップを作成する
- Sunriseクライアントを使用してネットワークと対話する
- 主要な機能を示すサンプルdAppを実行する
Sunriseでの構築のすべての側面をカバーする包括的なガイドについては、Sunrise Builders Kitをご覧ください。
前提条件
「前提条件」セクションへのリンク開始する前に、次のツールがインストールされていることを確認してください。
| ツール | バージョン | 目的 |
|---|---|---|
| Go | >=1.22 | Sunriseバイナリとコアコンポーネントをビルドする |
| Rust + Cargo | stable | Rollkitデモチェーンとスマートコントラクトをビルドする |
| Node.js | >=20 | JSクライアント、スクリプト、Webアプリケーションを実行する |
| Docker + Docker Compose | latest | コンテナ化されたサービスと開発スタックを実行する |
| (オプション)direnv | any | シェルで環境変数を自動的にロードする |
# macOS(brew)の例brew install go rustup node docker direnvrustup default stable1. リポジトリをクローンする
「1. リポジトリをクローンする」セクションへのリンク3つの主要コンポーネントで開発プレイグラウンドを作成します。
mkdir sunrise-playground && cd $_git clone https://github.com/sunriselayer/network sunrise-dagit clone https://github.com/rollkit/rollkit rollkitgit clone https://github.com/sunriselayer/examples examplessunrise-da: コアのSunriseネットワーク実装rollkit: ソブリンロールアップを構築するためのフレームワークexamples: サンプルアプリケーションと統合の例
2. ローカルのSunrise DAノードを起動する
「2. ローカルのSunrise DAノードを起動する」セクションへのリンクSunrise DAノードはネットワークの基盤であり、ロールアップにデータ可用性サービスを提供します。
cd sunrise-damake install # 'sunrised'をビルドしますsunrised init dev --chain-id goldberg-localsunrised start| サービス | ポート | 目的 |
|---|---|---|
| Tendermint RPC | 26657 | トランザクションとクエリのメインRPCエンドポイント |
| gRPC | 9090 | 高度な操作のためのプロトコルバッファインターフェース |
3. アカウントに資金を供給する(フォーセット)
「3. アカウントに資金を供給する(フォーセット)」セクションへのリンクネットワークと対話するためにテストアカウントを作成し、資金を供給します。
sunrised keys add alice --keyring-backend testsunrised tx bank mint $(sunrised keys show alice -a) 1000000000urise \ --from alice --keyring-backend test --yesこれにより、「alice」という名前の新しいアカウントが作成され、テスト用に10億マイクロRISEトークン(urise)がミントされます。
4. 最小限のRollkitソブリンロールアップを起動する
「4. 最小限のRollkitソブリンロールアップを起動する」セクションへのリンクRollkitは、データ可用性のためにSunriseを使用できるソブリンロールアップを構築するためのフレームワークです。
cd ../rollkitmake demo # デモバイナリ'demo-rollup'をビルドします
# BLOBをSunrise DAに保存するようにRollkitを設定しますcat <<EOF > rollup.config.toml[da]rpc_address = "http://localhost:26657"fee_denom = "uusdrise"gas_price = "0.025"[rollup]chain_id = "demo-rollup-1"EOF
./demo-rollup start --config rollup.config.tomlロールアップは、ブロックデータを自動的にSunriseに公開し、DA証明を取得します。
5. @sunriselayer/clientでBLOBを投稿して検証する
「5. @sunriselayer/clientでBLOBを投稿して検証する」セクションへのリンクSunriseクライアントは、Sunriseネットワークと対話するためのJavaScript/TypeScriptライブラリです。使用方法は次のとおりです。
# ルートのプレイグラウンドディレクトリ内npm create vite@latest js-client-demo -- --template vanillacd js-client-demo && npm i @sunriselayer/client
cat <<'JS' > src/index.jsimport { SunriseClient } from "@sunriselayer/client";
const rpc = "http://localhost:26657";const main = async () => { const client = await SunriseClient.connect(rpc);
const { transactionHash } = await client.da.submitBlob( "Hello Sunrise!", { gasLimit: 200_000, feeDenom: "uusdrise", gasPrice: "0.025" } ); console.log("Blob tx:", transactionHash);
const proof = await client.da.getBlobProof(transactionHash); console.log("Inclusion proof:", proof);};main();JSnode src/index.jsこの例では、次のことを示します。
- Sunriseノードへの接続
- データBLOBの送信
- 包含のマークル証明の取得
6. サンプルdAppを実行する(トークンスワップ)
「6. サンプルdAppを実行する(トークンスワップ)」セクションへのリンクサンプルdAppは、Sunriseの流動性プールモジュールを使用したトークンスワップを示します。
cd ../../examples/swap-demonpm inpm run dev # http://localhost:5173を開きますデモUI:
- @sunriselayer/clientに接続します
- ロールアップのx/swapモジュールを介してテストトークンをスワップします
- Sunrise DAから取得したライブ残高を表示します
7. 次のステップ
「7. 次のステップ」セクションへのリンク| 内容 | 場所 | 説明 |
|---|---|---|
| 完全なクライアントリファレンス | クライアントドキュメント | @sunriselayer/clientの完全なAPIドキュメント |
| 本番用Rollkitチェーンの構築 | Rollkitガイド | 本番用ロールアップのデプロイガイド |
| バリデーターとDA証明 | バリデーターガイド | バリデーターのセットアップとDA証明の生成について学ぶ |
| 概念的な詳細 | 学習セクション | Sunriseのコアコンセプトを理解する |
トラブルシューティング
「トラブルシューティング」セクションへのリンク| 症状 | 修正 | 説明 |
|---|---|---|
| ポート26657でECONNREFUSED | sunrised startが実行されていないか、RPC URLが間違っている | Sunriseノードが実行され、アクセス可能であることを確認してください |
| RollkitがBLOBを投稿できない | ~/.sunrise/config/app.tomlでmin-gas-pricesを確認してください | ガス価格の設定がネットワーク要件と一致していることを確認してください |
| BLOB txがメモリプールでスタックしている | ガス価格が低い → --gas-prices 0.025uriseを使用してください | トランザクション処理を確実にするためにガス価格を上げてください |
クリーンアップ
「クリーンアップ」セクションへのリンクpkill sunrised demo-rollup || truedocker compose -f docker/local-da.yml down -v || truerm -rf ~/sunrise-playgroundハッピーハッキング!🎉