WebAssemblyを開発する際の最も基本的な言語となるのがRustです。WebAssemblyでは元々DOMやネットワーク操作ができませんが、Rustのwasm-bindingによってWebブラウザ側のAPIを実行できるようになりました。その結果、WebAssembly活用の幅が広がったと言えます。 Kaguraはそんなwasm-bindingを使い、RustだけでWebアプリケーションを開発できるフレームワークになります。

Kaguraの使い方

チュートリアル的に紹介されている内容です。JavaScriptは書いていませんが、ちゃんとWebアプリケーションになります。

ライブリロードが組み込まれているので、Rustのコードを修正するとWebブラウザの表示に反映されます。

Kaguraを使うことでJavaScriptを書かずにWebアプリケーションが構築できます。DOMとネットワークは別ですが、数値計算などはRustによって高速に実現できます。コードの難読化という意味でも有効でしょう。仮装DOM的に描画を行うのも今時な感じで開発がとても楽です。今後の発展が非常に楽しみなソフトウェアです。

KaguraはRust製のオープンソース・ソフトウェア(Apache License 2.0とMIT Licenseのデュアルライセンス)です。

SoundRabbit/Kagura: Frontend frame-work for wasm on Rust.