メインコンテンツへスキップ

プロジェクトの初期化

blocklet init コマンドは、既存のディレクトリ内に新しい blocklet の基本構造を作成するのに役立つ対話型ユーティリティです。コアとなる blocklet.yml メタデータファイルやその他の基本的なボイラープレートを生成し、現在のフォルダを機能的な blocklet プロジェクトに変換します。

このコマンドは、blocklet をゼロから始めたい場合や、既存のプロジェクト(例:すでに package.json があるプロジェクト)を blocklet に変換したい場合に最適です。あらかじめ構築されたテンプレートから始めたい場合は、blocklet create コマンドを参照してください。

インタラクティブなウォークスルー

プロジェクトディレクトリで blocklet init を実行すると、CLI が一連の質問を通じて blocklet のメタデータ設定を案内します。

Terminal

bash
blocklet init

プロセスは次のようになります:

text
This utility will walk you through create such files and folders(if not exists):
- blocklet.yml
- blocklet.md
- screenshots/

It only covers common items, if you want to check all items, please visit:
https://github.com/ArcBlock/blocklets#keyinfo-blockletjson

Press ^C to quit.
? blocklet title: (my-blocklet) my-first-blocklet
? Please write concise description: A new Blocklet project.
? What's the group of the blocklet? dapp
? What's the entry point of the blocklet? (index.js)

Is this OK: (Y/n) Y

Meta file .../my-blocklet/blocklet.yml was created
Doc file .../my-blocklet/blocklet.md was created
Screenshots dir .../my-blocklet/screenshots/ was created
.../my-blocklet/logo.png was created
.../my-blocklet/index.js was created

プロンプトの説明

プロンプト説明
titleblocklet の人間が判読可能な名前。表示目的で使用されます。デフォルトは現在のディレクトリ名です。
descriptionblocklet の機能を簡潔に一行でまとめたもの。
groupblocklet のタイプまたはカテゴリ。利用可能なオプションは dappstaticapigateway です。
mainblocklet コードのエントリポイント。dapp blocklet の場合、通常は index.js のようなスクリプトです。static blocklet の場合、静的アセットを含むディレクトリ(例:.)です。

初期化プロセス

このコマンドは、DID ウォレットに接続して blocklet 用のユニークな分散型 ID (DID) を生成するなど、プロジェクトをセットアップするためにいくつかの主要なステップを実行します。

Initialize Project

生成されるファイル

初期化が成功すると、プロジェクトに以下のファイルとディレクトリが作成されます:

  • blocklet.yml: 最も重要なファイルです。これには、名前(DID)、タイトル、説明、バージョンなど、blocklet のすべてのメタデータが含まれています。 blocklet.yml yaml name: 'z8iZz5de8e9a6f8f2b3c1d9e2f7g2h1i8j3k4l5m' version: '0.1.0' title: 'my-first-blocklet' description: 'A new Blocklet project.' group: 'dapp' main: 'index.js' author: 'Your Name <your.email@example.com>' specVersion: '1.16.0' did: 'z8iZz5de8e9a6f8f2b3c1d9e2f7g2h1i8j3k4l5m' logo: 'logo.png' scripts: dev: 'node index.js'
  • blocklet.md: Blocklet ストアに表示される、blocklet の詳細なドキュメントと説明のためのプレースホルダー Markdown ファイルです。
  • screenshots/: blocklet ストアで表示するために、blocklet のスクリーンショットを配置できる空のディレクトリです。
  • logo.png: blocklet のデフォルトのロゴ画像です。 デフォルトの Blocklet ロゴ
  • エントリポイントファイル: 選択した group に応じて:
    • dapp の場合、シンプルな Node.js HTTP サーバーを備えた index.js が作成されます。 index.js javascript const http = require('http'); const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello Blocklet\n'); }); const port = process.env.BLOCKLET_PORT || 3000; server.listen(port, () => { // eslint-disable-next-line no-console console.log(`Server running at http://127.0.0.1:${3000}/`); });
    • static の場合、index.html が作成されます。 index.html html <!DOCTYPE html> <html> <head> <title>Hello Blocklet</title> </head> <body> <h1>Hello Blocklet</h1> </body> </html>
  • .gitignore: 一般的なビルド成果物や依存関係がバージョン管理にコミットされるのを防ぐために、基本的な .gitignore ファイルが追加されます。

コマンドオプション

以下のフラグを使用して blocklet init の動作を変更できます。

オプションエイリアス説明
--yes-yインタラクティブプロンプトをスキップし、すべてのデフォルト値を受け入れます。スクリプト作成に便利です。
--force-f--yes のエイリアスです。
--did <did>使用する特定の Blocklet DID を指定し、自動生成ステップをスキップします。

例:非インタラクティブな初期化

プロンプトに答えずにプロジェクトを迅速に初期化するには、-y フラグを使用します。コマンドは package.json(存在する場合)またはディレクトリ名から派生したデフォルト値を使用します。

Terminal

bash
blocklet init -y

プロジェクトが初期化されたら、ビルドを開始する準備が整いました。次のステップは、ローカル開発環境で blocklet を実行することです。

次へ:開発モード

ライブリロード開発サーバーで blocklet を実行する方法を学びます。

詳細はこちら