Mesmo が Cardano の機能を4つのプログラミング言語に提供
Cardano Foundation のプレリリースライブラリは、Cardano Client Lib のトランザクション、ステーキング、ガバナンスのツールを Python、Go、Rust、JavaScript に拡張する。
By SongMarketCap
Updated:
Cardano Foundation は9月24日、Java の外側で Cardano の機能を扱う別の方法を開発者に提供するため、Mesmo を公開した。これは Cardano Client Lib から選択した機能を、Java Virtual Machine を起動せずにアプリケーションから呼び出せるネイティブ共有ライブラリとしてパッケージ化する。
Mesmo は既存の SDK と併用できる
開発者はすでに pycardano、MeshJS、Lucid、Pallas などのツールで Cardano アプリケーションを構築している。各 SDK は独自のリリースサイクルを持つため、新しいプロトコル機能への対応が届く時期はそれぞれ異なり得る。Mesmo を使えば、チームは従来どおりの SDK に依存しつつ、必要な箇所だけで選択した Cardano Client Lib の機能を利用できる。
このプロジェクトは GraalVM Native Image を用いて、Java ライブラリを標準的な C インターフェースを備えたネイティブバイナリにコンパイルする。各言語向けのラッパーがその機能を Python、Go、Rust、JavaScript に公開する。これにより開発者は、Java のサービスを維持せずとも、さまざまな環境でそれらの操作を利用できる。
ノードを実行せずにトランザクションを構築
Mesmo はアカウントとアドレスの取り扱い、暗号、トランザクションの構築と署名をカバーする。そのトランザクションモデルには、支払い、ステーキング、DRep 登録、ガバナンス投票、ネイティブスクリプト、Plutus スクリプトが含まれる。ライブラリは Plutus データムのハッシュ化やオフラインでの実行コスト算出も提供する。
例えば、主要な SDK がまだ特定のガバナンスアクションに対応していないチームでも、Mesmo を使ってそのトランザクションを構築し署名できる。アプリケーションは引き続き別のプロバイダから最新のブロックチェーンデータを取得し、既存のインフラを通じて完成したトランザクションを送信する。
Mesmo 自体はチェーンの同期やノード接続の維持を行わない。
Cardano Foundation によると、自動テストは各言語ラッパーから開発ネットワークへ、サポート対象のトランザクションタイプを構築して送信する。また、ノードが不正なトランザクションを拒否することも検証する。これは、ラッパーがライブラリを呼び出せることの確認にとどまらず、生成されたトランザクションがネットワーク規則に適合しているかを検証するものだ。
プレリリースの制約と今後の予定
Mesmo は依然としてプレリリース段階であり、API は変更される可能性がある。ネイティブライブラリはアプリケーションにおよそ 60 MB を追加する。JavaScript 対応は現在 Bun を使用しており、現行のネイティブインターフェース構成との非互換性により Node.js はサポートされていない。
ロードマップには、追加のデータプロバイダ統合や WebAssembly への対応が含まれている。関連する Cardano Client Lib のリリースが安定した後、チームはベータへ移行する計画だ。