Tweet
Rust + WASM 実践Webアプリ開発 GitHub Pagesで無料公開する手順と実装
1,980円
(1,800円+税)
本書は、RustとWASMを使ってWebアプリを開発し、GitHub Pagesで無料公開するまでの実践的な手順を丁寧に解説した技術書です。難解になりがちなRustやWASMを、動くサンプルを段階的に作りながら学べる構成とし、「まず公開する」という実務視点を重視しています。
関連サイト
本書の関連ページが用意されています。
内容紹介
本書は、RustとWASMを使ってWebアプリを開発し、GitHub Pagesで無料公開するまでの実践的な手順を丁寧に解説した技術書です。難解になりがちなRustやWASMを、動くサンプルを段階的に作りながら学べる構成とし、「まず公開する」という実務視点を重視しています。YewやTrunkによるフロントエンド実装、CSS適用、フォーム入力、外部API連携、ルーティング設定、ローカルストレージを用いた状態管理までを網羅し、静的ホスティング環境の制約を活かした設計思想も紹介します。作って終わりではなく、世界に公開して初めて意味を持つ──その体験を通して、Rust/WASMを実用技術として身につけたい方に最適な一冊です。
書誌情報
- 著者: 大野 駿太郎
- 発行日: 2026-04-17 (紙書籍版発行日: 2026-04-17)
- 最終更新日: 2026-04-17
- バージョン: 1.0.0
- ページ数: 182ページ(PDF版換算)
- 対応フォーマット: PDF, EPUB
- 出版社: インプレス NextPublishing
対象読者
Rust,WASM,Webアプリ,アプリ開発,GitHub,公開,いぇw,Trunk,フロントエンド,API,CSS,同人誌,技術同人誌,技術書典に興味がある人
著者について
大野 駿太郎
J-IMPACT(日本電算術研究所)代表。「手を動かす人のための研究所」として、理論を現実の技術へと落とし込む実装力を重視。組込みRust、ソフトウェア無線、信号処理、半導体設計を横断する実践的な技術開発に取り組む。その成果を技術書の執筆や基板製作を通じて公開することで、エンジニアが自ら設計・検証し、現実に作用する技術を創出できる環境づくりを推進している。医師・博士(医学)、統計検定1級、第一級陸上無線技術士。
目次
はじめに
- 無料で運営し、使われ、成長するWebアプリケーションへ
- 本書の目的と、目的としないこと
- サンプルコードの開発環境
- J-IMPACT(日本電算術研究所)について
第1章 環境構築と技術解説
- 1.1 Github Pages
- 1.2 WebAssembly(WASM)
- 1.3 Rust
- 1.4 Yew
- 1.5 Trunk
第2章 Hello, Yew!
- 2.1 最も簡単なWebアプリ
- 2.2 作業の進め方
- 2.3 Webアプリを実装するためのファイルの解説
- 2.4 ローカル環境でのWebアプリの実行
- 2.5 Trunk.tomlによるURL設定
- 2.6 deploy.yamlによるアプリ公開処理の自動化
- 2.7 Webアプリの公開
- 2.8 まとめ
第3章 Yewの基本的な機能
- 3.1 プロフィールアプリの作成
- 3.2 見た目の調整(CSSの利用)
- 3.3 ボタン処理の実装
- 3.4 入力処理の実装
- 3.5 外部APIの利用
- 3.6 作成したコンポーネントを利用可能にする
- 3.7 ルーティング処理の実装
- 3.8 Github Pagesでルーティングを実現する
- 3.9 まとめ
第4章 Yewの様々な特殊構文
- 4.1 クイズアプリの作成
- 4.2 クイズの作成と管理
- 4.3 特殊なPropertiesの使い方
- 4.4 if文による描画内容の分岐
- 4.5 for文による描画の繰り返し
- 4.6 Callbackの型を変更する
- 4.7 use_node_refによるDOM操作
- 4.8 use_memo関数を使用した省エネ化
- 4.9 Yew Hookの使い方
- 4.10 まとめ
第5章 データの長期保存と複雑なコンポーネント定義
- 5.1 To-Doアプリの作成
- 5.2 To-Doアプリの仕様
- 5.3 ブラウザに情報を保存する
- 5.4 タスク情報を「Redux」で管理する
- 5.5 Reduxの使用法
- 5.6 コンテクストの使用法
- 5.7 まとめ
第6章 Webアプリのテスト駆動開発
- 6.1 作業タイマーアプリの作成
- 6.2 要件定義
- 6.3 単体テストの実行
- 6.4 統合テストの実行
- 6.5 Github上でのUI統合テスト
- 6.6 まとめ
第7章 WASMによる高速処理と3D描画
- 7.1 物理シミュレータの作成
- 7.2 シミュレーションの詳細
- 7.3 WebGLによる3D描画
- 7.4 アプリ描画コンポーネントの作成とデバッグ出力
- 7.5 コンソール・ログの活用
- 7.6 まとめ
第8章 地図APIとGithub関連機能
- 8.1 JPEG Exif閲覧・編集アプリの作成
- 8.2 画像をアップロードしてメタデータを編集する
- 8.3 座標(緯度経度)の扱い方
- 8.4 Leafletによる地図表示と操作
- 8.5 ファイルのアップロードとダウンロード
- 8.6 環境変数の活用
- 8.7 独自ドメインの設定
- 8.8 まとめ
付録A Trunk実行時のエラーについて
付録B モジュールの読み込みと階層関係
- B.1 モジュールの階層構造の整理
- B.2 モジュール読み込みの方法
