blocklet.ymlファイルは、すべてのBlockletの中心です。これは、アプリケーションに関するすべての重要なメタデータを定義するYAMLマニフェストであり、Blocklet Serverやエコシステム内の他のツールにとっての信頼できる唯一の情報源として機能します。
これはNode.jsの世界におけるpackage.jsonに相当するものですが、分散型アプリケーションの完全なライフサイクルと構成を網羅するように拡張されています。BlockletのIDとバージョンから、実行方法、公開するウェブインターフェース、他のBlockletへの依存関係、ユーザーインターフェースとの統合方法まで、あらゆる詳細を定義します。
この仕様は、blocklet.ymlで利用可能なすべてのフィールドの決定版リファレンスです。単純な静的ウェブサイトを構築する場合でも、複雑なマルチサービスアプリケーションを構築する場合でも、適切に記述されたblocklet.ymlは、アプリケーションが正しく予測どおりに実行されることを保証するための第一歩です。
基本的な例
以下に、基本的な構造を示す最小限のblocklet.ymlファイルを示します。各フィールドの詳細は、以下のセクションで説明します。
blocklet.yml
# BlockletのコアID
did: z8iZpA63mBCy9j82Vf9aL3a8u9b5c7d9e1f2
name: my-awesome-blocklet
version: 1.0.0
# 人間が読めるメタデータ
title: My Awesome Blocklet
description: A simple Blocklet to demonstrate the core concepts.
# Blockletの実行方法
main: api/index.js
# BlockletのWebへの公開方法
interfaces:
- type: web
name: publicUrl
path: /
prefix: '*'
port: BLOCKLET_PORT
protocol: http
# システム要件
requirements:
server: ">=1.16.0"
os: "*"
cpu: "*"仕様のセクション
blocklet.ymlの仕様は、プロパティの論理的なグループに整理されています。各フィールドの目的、有効な値に関する包括的なガイドについては、以下のセクションをご覧ください。
コアメタデータ
名前、DID、バージョン、説明など、Blockletのアイデンティティを定義する基本的なプロパティ。
関係者と所有権
Blockletの作成者、貢献者、メンテナーを指定します。
配布とリンク
配布パッケージ、ソースコードリポジトリ、ホームページ、ドキュメントへのリンクのためのフィールド。
実行と環境
ランタイムエンジン、システム要件、環境変数、ライフサイクルスクリプトを設定します。
インターフェースとサービス
BlockletがWebページ、API、その他のエンドポイントを外部に公開する方法を定義します。
構成(コンポーネント)
他のBlockletをコンポーネントとして組み合わせることで、複雑なアプリケーションを構築します。
UIとテーマ
ナビゲーション項目とテーマ設定を定義して、BlockletのUIをシームレスに統合します。
収益化
Blockletの価格設定、収益分配、NFTベースの購入を設定します。
セキュリティとリソース
署名でメタデータの完全性を確保し、リソースフィールドを使用して共有アセットを定義します。
blocklet.ymlの構造の概要を理解したところで、上記の特定のセクションを詳しく調べて、必要な詳細情報を見つけてください。このメタデータとプログラムでやり取りする方法については、APIリファレンスを参照してください。