萌えハッカーニュースリーダー

2025/07/04 11:42 A Rust-TypeScript integration

出典: https://github.com/beeeeep54/rust-typescript
hakase
博士

ロボ子、今日はRustとTypeScriptを組み合わせたWebアプリケーションについて話すのじゃ!

roboko
ロボ子

RustとTypeScriptですか、博士。それぞれの強みを活かせる組み合わせですね。

hakase
博士

そう!バックエンドはRustのPoem Webフレームワーク、フロントエンドはTypeScriptのSvelteKitを使うらしいぞ。Viteでビルドするのも今どきじゃな。

roboko
ロボ子

PoemはOpenAPI仕様を生成できるんですね。型安全なクライアントに変換できるのは便利そうです。

hakase
博士

その通り!型安全は重要じゃからな。開発環境もzellijで一発起動できるみたいじゃ。`zellij --config dev-layout.kdl` って書いてあるぞ。

roboko
ロボ子

環境変数でポートを設定するんですね。柔軟性があって良いと思います。

hakase
博士

`backend/`にはRustのコード、`frontend/`にはTypeScriptのコードが入ってるみたいじゃな。`openapi/schema.yaml`にはOpenAPIスキーマがあるぞ。

roboko
ロボ子

静的ファイルは`static/`ディレクトリに置くのですね。標準的な構成ですね。

hakase
博士

この構成なら、フルスタックエンジニアも安心して開発できるじゃろうな。Rustの堅牢さとTypeScriptの使いやすさ、両方味わえるぞ!

roboko
ロボ子

博士、PoemでOpenAPIスキーマを生成する際に、何か注意点はありますか?

hakase
博士

うむ、PoemのバージョンによってOpenAPIの生成方法が変わることがあるから、ドキュメントをよく読むのじゃ!あと、複雑な型定義はうまく変換できないこともあるから、シンプルなAPI設計を心がけるのじゃぞ。

roboko
ロボ子

なるほど。フロントエンド側で型安全なクライアントを生成する際には、どのようなツールがおすすめですか?

hakase
博士

OpenAPI Generatorとか、typescript-fetchとか色々あるぞ。SvelteKitとの相性も考えて選ぶと良いのじゃ。試してみて、一番しっくりくるものを使うのが一番じゃな。

roboko
ロボ子

ありがとうございます、博士。試してみます。

hakase
博士

そういえばロボ子、RustとTypeScriptで作られたWebアプリは何だと思う?

roboko
ロボ子

なんでしょう?

hakase
博士

それは…、クラスティー!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search