Rustでwasm作ってみたくてやってみたことログ
Rustインストールは公式推奨の方法をとりあえずやっておいたほうがよさそう
エディタはVSCode使うのでRustプラグイン入れとく(公式にも載ってる)
https://zenn.dev/link/comments/21fad141efb080 のチュートリアル?で「依存関係を追加する」を進めるとtomlファイルをいじることになるが、これはBetter TOMLというVSCodeプラグインを入れておくと扱いやすくなりそう
cargoコマンドでパッケージ管理するようなので、npmみたいに
cargo install ferris-says
ってできそうやなーと思ってやってみたらエラーが発生した。
どうもバイナリ形式で提供されてるライブラリじゃないとだめとのこと。(なのでこのパッケージはバイナリで提供はされてないってことやと思ってる)
なのでチュートリアル通りに直接TOMLファイルを編集する形で進めた
↑を見てたらバイナリの場合は fsays
やでー的なこと書いてあったけど、CLIで利用できる感じなのでチュートリアルの用途とはまた違うということなのかもしれない
一通りチュートリアルやってみたので、wasmを作るにはどうすればいいのかを学ぶ。
これも公式で案内されてるドキュメントがあったのでそれに沿う形でやってみようと思う。
Setupはとりあえず言われたとおりやればOKやけど、npmの項目があって「チュートリアルの最後には、コンパイルした .wasm を npm レジストリに公開します。」と書いてあって、なるほどwasmはnpmモジュールとして使う感じなのかーと、wasmのこともそういえばあんまりわかってないなぁと今更ながら思った…
このページに沿えばとりあえずlocalhostでwasmが動く様を体験することが出来た。
ここまでのやり方やと、wasmをビルドするRustプロジェクトの下に、クライアントサイド(webフロントエンド)のプロジェクトをネストさせるようなやり方やった。たぶんいざ実装するとしたらwasmとFEを別リポジトリで扱って、FE側のリポジトリにwasmのリポジトリをnpm installするような形で実装することになるかなーとか考えながら手を動かしていた