テンプレート生成 (dfx new)

まずはじめに、最もシンプルなHelloを返すDappsを開発してみます。

dfx newコマンドを実行して自動生成されるもので、以下の2つのCanisterで構成されます。

  • Backend Canister

  • Frontend Canister

プロジェクト作成

dfx newコマンドをコマンドを実行すると、Backend開発に使用するプログラミング言語やFrontendのフレームワークなどを対話形式で訊かれた後、サンプルアプリケーションが自動生成されます。

『hello』はプロジェクト名ですので、適宜変更しても構いません。

$ dfx new hello

Backendのプログラミング言語の選択

$ dfx new hello
? Select a backend language: ›  
  Motoko
 Rust
  TypeScript (Azle)
  Python (Kybra)

Frontend frameworkの選択

? Select a frontend framework: ›  
 SvelteKit
  React
  Vue
  Vanilla JS
  No JS template
  No frontend canister

Extra featuresの選択

ディレクトリ構成

Local Canister実行環境の起動

Dapps開発時は本番環境に配備する必要はなく、ローカルPC内に配備します。

dfx startコマンドで、Local Canister実行環境を起動します。サービスを起動した後にコマンドラインを復帰させたい場合「--background」オプションを付与するとよいでしょう。

「--clean」はサービス起動時にCanisterを初期化するためのオプションです。

ローカル環境へのDeploy

※Canister IDは環境によって変わります。

実行

Webブラウザーでそれぞれアクセスしてみましょう。

Dashboard

Frontend

Backend

解説

生成されたアプリケーションは大きくFrontendとBackendの2種類があります。本ドキュメントではとくにBackend側に着目して、どのような仕組みとなっているかを紐解き、1ステップずつ開発方法を学んでいきたいと思います。

生成されたファイルのうち、Backendを動作させるのに最低限必要な設定ファイルは以下となります。

  • dfx.json

  • didファイル

  • Cargo.toml

  • lib.rs

dfx.json

src/hello_backend/hello_backend.did

開発したアプリケーションは外部からどのように呼ばれるか、I/Fを規定します。

src/hello_backend/Cargo.toml

src/hello_backend/src/lib.rs

最終更新

役に立ちましたか?