Loom SDKベータ版を使ってTruffleと連携させてスマートコントラクトを実行する

最近(2018年6月13日) Loom SDKベータ版がパブリック公開されました。LOOMトークンを持っている身としては試してみないといけないなということで早速動かして見ました!その備忘録になります。

ちなみにLoom SDKを開発しているLoom Networkは以前DAppsの学習で利用しましたCryptoZombiesと同じ開発チームになります。

無料で学べる!!CryptoZombiesでSolidityの学習してみた

2018年5月13日

Loom SDKとは

ブロックチェーンプラットフォームのLoom Network上でDAppsを構築するための開発キットになります。

またLoom Networkとは、大規模なオンラインゲームやソーシャルアプリ向けのブロックチェーンプラットフォームになります。

4月にはアルファ版が一部の開発者で利用できるようになったばかりですが、今回は全開発者へ公開され誰でも利用できるようになりました。

 

 動作環境

動作させた環境は以下になります。

  • Mac OS High Sierra v10.13.5 
  • node v10.0.0
  • yarn v1.6.0
  • truffle v4.1.7
  • solidity v0.4.22

 

セットアップ

Nature 3491846 640

 

基本的にはドキュメントを参考にしながら進めていきます。

必要なツールをインストール

 

Loom SDKをインストール

 

Dappチェーンを起動

 

Truffleデプロイコマンドを実行する

Truffleをインストール

 

プロジェクトを初期化

 

コントラクトを追加

contractsフォルダ配下にSimpleStore.solファイルを作成してコントラクトを作成する。 setメソッドでパラメータを保管して、getメソッドで取り出すというシンプルな内容になります。

 

マイグレーションの追加

migrationsフォルダ配下に2_simple_store.jsファイルを追加してください。内容は以下の通りです。

 

Loom Truffle Providerのダウンロードと設定

loom-truffle-providerをインストール。このライブラリではTruffleとLoom DAppチェーン間の接続が提供されます。

 

次にtruffle.jsファイルを編集して必要な設定を追加していきます。

 

loom genkeyを使用してキーを生成

 

Truffleデプロイコマンドの実行!

※デプロイ時は必ずDappチェーンを起動させた状態で実行してください。

 

下記のようなログが出ればOK。コントラクトアドレスは後ほど利用します。

1 zsh

Web3.jsとLoomProviderの設定と実行

Cog wheels 2125183 640

続いてデプロイしたスマートコントラクトを利用するフロント側の実装を進めます。

必要なライブラリのインストール

 

プロジェクト直下にsrcフォルダを作成し、中にindex.jsファイルを作成して下記の記述を追加

 

LoomProviderを設定。index.jsに追記していきます。

 

Web3コントラクトインスタンスの実行

SimpleStore.solのメソッドを実行するコードになります。

 

イベントをリッスンさせたい場合は以下のように書きます。

 

最終的なindex.jsのコードは以下の通りです。数値をセットした後に取り出してログとして出力しているだけになります。

コードのポイントは以上です。デプロイ時のコントラクトアドレスを置き換えることにご注意ください。あとは実行するだけです。

今回書いたコードはこちらに置いています。

上記からコードを落としてセッティングした場合は、一連の手順の最後に下記のコマンドを実行して起動できます。

動作確認

ブラウザ(http://localhost:8080/)にアクセスしてコンソールへの出力が確認できればOK!

Localhost 8080

まとめ

今回はTruffleと連携させてLoom DAppチェーン上にデプロイしてスマートコントラクトを利用しました。

コード自体はそんなに難しいことはしておらず簡単にスマートコントラクトを実行できたかと思います。

SDKにはUnityベースの横スクロールアドベンチャーゲームやブラウザベースのゲームサンプルがあるのでそのあたりも気になっています。

またLoom Networkは送金速度を上げるPlasmaを初期実装していますし今後の動向に注目です。

まつしん

近いうちにCryptoZombiesでも「Loom SDKエディション」の学習コースができるとか。良い学習サイトなのでLoom SDKを使い始めるエンジニアが増えそう!LOOMトークン買い増ししたい・・。

参考

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です