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

ArcBlockの新しいウェブサイトの解剖学

Robert
anatomyBlocklet ShowcaseDappsGuide

ArcBlockの新しいウェブサイトが公開されました。この記事では、私たちが自らArcBlockの新しいウェブサイトをどのように構築したかを徹底的に解説・分析します。再利用可能なBlockletを使ってArcBlockのウェブサイトを構築した方法をご覧いただければ、あなたにも簡単に実現できることがわかるはずです!

ArcBlockのウェブサイトはArcBlockの上に構築されている

以下は私たちのArcBlock公式サイトの管理コンソールです。

Image

ArcBlockのBlocklet製品に馴染みのある方なら、これが標準的なBlocklet管理バックエンドのインターフェースであることをひと目で見抜くでしょう。それでは、このバックエンドにどんな秘密が隠されているのか見ていきましょう。

サーバーレスサービス上で動作

右上のサブスクリプション状態通知は、私たちの公式サイトが自社のLauncher事業を利用した標準的なサーバーレスサービスとして稼働していることを示しています。現在、サブスクリプションの有効期限まであと198日と表示されていますが、心配は無用です。私たちはPayment Kitを使って自動更新サブスクリプションを有効にしているからです。期限が近づくとシステムが自動的にメールや通知でリマインドし、自動的に更新を行います。更新が成功した場合も、予期せぬ事態が発生した場合も、私たちはすぐに通知を受け取ります。

自社の標準的な外部サービスの上に公式サイトを構築していることは、私たちが自らのプラットフォームに寄せる自信の表れです。ArcBlockのサーバーレスサービスを利用すれば、私たちの公式サイトと同等のサービスを得ることができます。サーバーレス方式でウェブサイトを運用することで、トラフィックの変化への適応力が高まり、セキュリティが向上し、運用保守コストも下がります。

ArcBlockの自社サービスの大部分は、私たち自身の外部サービスを使って提供されており、ArcBlockのサービスを通常利用するどのお客様とも変わりありません。ブロックチェーン、ブリッジ、テスト用サービスだけがこれらの外部サービスを利用していない例外です。

自動化されたドメイン、HTTPS証明書管理

Blockletには、完全なドメイン名バインディング機能と、完全自動化されたHTTPS証明書管理機能があります。特にHTTPS証明書については、申請から定期更新まですべて自動で完結し、ユーザーはこうした細かい点を気にする必要が一切ありません。

Image

Blockletは任意の数のドメイン名をバインドでき、システムも内部利用のためのドメイン名を自動的に割り当てます。私たちのDID Name ServiceにおけるDID DNSが正式にリリースされれば、DID DNSと組み合わせて、完全自動化されたドメイン名のバインディングとドメイン名の管理・保守を実現できるようになります。

DID

すべてのBlockletアプリケーションと同様に、DID、DID/VCに基づく強化されたユーザー管理・ユーザー権限管理は、すべてのBlockletの標準構成です。開発者は一行のコードも書くことなく、最新のDID/VCおよびDID、安全で包括的、かつ強力なユーザーIDおよびアクセス管理システム(IAM)を手に入れることができます。

Image

ArcBlockのメインサイトにはもう一つ特別な使命があります。それは、すべてのArcBlockサービスの統一ログインサービスの提供者となることです。つまり、今後すべての他のArcBlockサービスは、私たちの公式サイトと統一ログインを採用することになります。

DID

DID、あらゆるBlockletアプリケーションの標準構成です。ArcBlockの公式サイトは、この基本的なBlocklet Serviceを最大限に活用し、データの安全性と信頼性を確保しています。

Image

その他の機能

Blocklet アーキテクチャを使って実現できるさまざまな機能について、完全なチュートリアルを書くこともできますが、この記事では詳しくは触れません。ここでは簡単なリストだけをご紹介します。

  • ウェブ解析機能。これらの統計情報は完全にプライバシーが保護されています。
  • 機能モジュール(Blocklet)の自動アップグレードとホットアップデート。
  • Sitemapの自動管理・保守、検索エンジン最適化(SEO)の自動管理。
  • 画像・動画リソースの自動圧縮、最適化、CDN最適化。
  • ソーシャルメディアや共有機能に使われるOpen Graphプロトコルの自動対応。 ... 以上はすべて、Blocklet Frameworkを利用した際にデフォルトで標準提供されるサービスです。言い換えれば、Blockletを使って構築されたどのサービスも、追加の開発や設定を一切必要とせず、私たちの公式サイトと同じ能力を持っています。従来型のウェブアプリケーションの実装では、上記に挙げたほぼすべての部分について、開発・設定・管理の作業が必要になります。似たような機能を提供するフレームワークやライブラリがあったとしても、開発者はそれらを統合する作業が必要です。

ArcBlockサイトはどのBlockletを使用しているか?

ArcBlockの公式サイトは現在、以下のBlockletを使って構築されています。ArcBlockはコンポーザブルなアーキテクチャであるため、どのアプリケーションも必要に応じて必要なBlockletをインストールし、最終的なサービスを形成することができます。したがって、ここではこの記事を書いた時点で私たちが使用したBlockletを紹介しているに過ぎません。自分のウェブサイトを設計する際には、必要に応じて自由に組み合わせることができます。

Pages Kit

あなたが今訪れているホームページはPages Kitを使って構築されています。

Pages Kitは私たちのWeb3 Kitシリーズのコンポーネントの一つです。Pages Kit自体すでに非常に強力ですが、その機能は、従来のウェブ開発において上場企業が提供するサービス、例えばWixSquare Spaceにも匹敵することがわかるでしょう!さらに、ArcBlockのBlocklet Frameworkが持つ組み合わせ能力のおかげで、Pages Kitは現在市場に出回っているどのビジュアルウェブページ構築ツールよりも強力です。

Pages Kit

私たちの新しいホームページのインタラクティブなプロダクトアーキテクチャ図も、Pages Kitを使って構築されています。これは私たちの最新版Pages Kitの強力な機能を示すものであり、今後詳しく専門的にご紹介する予定です。

image.png

Media Kit(Image Bin)

このBlockletは、Pages Kitをインストールする際に自動的にインストールされます。その役割は、必要な画像、動画、ファイルなどのアップロードと処理を管理することです。 Media Kitは私たちのWeb3 Kitシリーズのコンポーネントの一つです。

Media Kit

Media Kitは他のサービスと組み合わせることもできます。例えばAI Kitと組み合わせれば、ファイルをアップロードする代わりにAIGCを使って自動的に画像を生成できます。また、Unsplashのようなサードパーティサービスとも統合でき、必要な画像を直接検索して使用することができます。

Discuss Kit

Discuss Kitはサイトのほとんどの機能をサポートしており、今あなたが読んでいるこの記事もその一つです。サイト上のすべての記事、ドキュメント、ブックマークコレクション、ディスカッションはDiscuss Kitによって支えられています。Discuss Kitは、動的なウェブサイトを構築するためのスイスアーミーナイフと言えるでしょう。Pages Kitと完璧に統合され、ウェブサイトの要件の90%以上を満たすことができます。

Discuss Kitは私たちのWeb3 Kitシリーズのコンポーネントです。

Discuss Kit

AI Kit

私たちの公式サイトにはAIの機能が含まれています。これを有効にするには、AI Kitをインストールし、提供されるAIサービスを購読するだけです。 AI Kitは、オプションの機能強化Blockletとして設計されています。一度インストールすれば、AI機能をサポートする他のすべてのBlockletがAI機能を持つようになり、ここでAIの利用を一元管理できます。

AI Kit

Mellisearch

Mellisearchは現在、私たちのテスト用ストアでのみ利用可能で、その機能はウェブサイトに全文検索機能を提供することです。 Mellisearch自体はオープンソースのコンポーネントであり、私たちはそれをBlockletとして適応させました。これはBlockletを構築する典型的な方法の一つで、開発者はオープンソースのコンポーネントをBlockletに適応させることができ、これらのオープンソースコンポーネントのインストールと使用を非常に簡単にすることができます。

Meilisearch

このページに関わるもの

用語

  • Blocklet

    Blocklet は ARC の deployable unit です。アプリケーションが宣言する content、configuration、runtime の要件を一緒に保ち、実行する単位を理解し管理しやすくします。

  • Dapp

    重要な状態が単一の運営者のデータベースだけに存在しないアプリケーション。何をもって分散とするかはプロジェクトごとに大きく異なるため、有用な問いは「どの部分が外部の人に検証できるか」です。