tsrs.run
Arena を開く
RUST + WASM · すべてブラウザ内で動作

tsrs — ブラウザで動く TypeScript 型顕微鏡。 型を読め。
省略は罠。

IDE は、本当に必要な型を “...” に折りたたみます。ファイルをここに貼り付ければ、tsrs.run がすべてのノードを展開し、TS2322 を 1 行ごとの差分に変え、入力中に Rust コンパイラと tsc を競わせます。

マルチファイル · 0.2 s で起動 · ブラウザ外に何も出ない
1,412 型を 1 画面に 省略なし、インストール不要、アップロード不要
IDE 内
type UserSchema = { id: string; profile: Simplify<Merge<Extract< UserSchema, "profile">>>; … 12 more}

見たい部分が始まる直前で、ツールチップは途切れる。コピーしても解決しない — すでに折りたたまれているからだ。

tsrs.run 内
0.38 ms · 24 ノード
▾ UserSchema :
id : string
▾ profile : {
age : number
tags : Array<{ id: number }> ⚠ 実際: string · 30:18
▾ meta : {
locale : 'en-GB' | 'de-DE'
status : 'active' | 'invited'

同じ型のすべてのノードを 0.31 ms で出力 — 競合もすでに表示される。

0 省略されたノード
4 ストレスプリセット
0.2 s 共有リンクの読み込み
3.2 ms パッケージ検査あたり
01 · 型の計器

1 つの型の問題。
3 つのレンズ。

IDE のホバーに収まらないすべてを、ここに。型ツリー全体、異なる 1 つのリーフまで絞ったエラー、そして各ジェネリクスのコストを行末に表示します。

A TYPE X-RAY

任意のシンボルをクリックすると、すべてのノードが開く — プリミティブ、ユニオン、配列、そして宣言元まで。要約も省略もない。

24 ノード · 0.31 ms

B ERROR DIFF

TS2322 は構造差分になる。同一のフィールドは 1 行に折りたたまれ、不一致のリーフには実際の型と期待する型の両方が示される。

6 階層 · 1 変更

C COST LENS

各型定義は、解析時間とインスタンス化回数というコストを行内に示す。2 ms を超える行には、稲妻ではなく炎が付く。

0.38 ms 標準 · 6.40 ms 最悪

02 · プリセット サンプル実行、ローカルで再計算

コンパイラを苦しめる 4 つの方法。

各プリセットには専用の tsconfig と仮想ファイルツリーが付属します。共有リンクには、ファイル、設定、検査中のノードまで一式が含まれます。

03 · NPM チェック

パッケージをチェック
インストールする前に。

Bundlephobia が測るのは JavaScript。パッケージが型チェッカーに与える負荷を測るものはない。名前を入力すると、ワーカーが jsdelivr から .d.ts ツリーを取得し、両エンジンで解析してグレードを返します。

時間 tsrs と tsc のチェック時間を並べて比較
サイズ 宣言サイズ、ファイル数、エクスポートシンボル
グレード 1 文字:A+ 超軽量から F 型爆弾まで
tsrs.run/npm/
NPM 型レポート [email protected]
超軽量 A+
型チェック
tsrs 3.20 ms / tsc 28.40 ms
宣言 1.4 MB
エクスポート 412
tsrs チェック · 3.20 ms · A+ README バッジ
フルレポート · 64 ファイル 開く
04 · 再現を共有

再現がリンクになる。

複数ファイルのプレイグラウンドは GitHub Issue に残せない。共有を押せば、エディタの状態 — すべてのファイル、tsconfig、検査中のノード — がフラグメントに圧縮される。2 週間後に開いても、両エンジンがその場で再実行される。

01 ファイルを貼り付ける 任意の数のファイルと、あなたの tsconfig。
02 ノードを指定する 検査中の型もハッシュに含まれます。
03 Issue に貼り付ける 0.2 s で開きます。アカウントもアップロードも不要。
tsrs.run/#c= N4IgbiBcCMA0IDMCWAbApgZygbWyJAdgCZoAeAdAC5bx…
あなた たった今コメント
再現

型 InputUser は UserSchema に代入できません — 4 階層の奥で、1 つのリーフが異なります。

tags: Array<{
- id: string;
+ id: number;
}>
https://tsrs.run/#c=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
412 行 · 3 ファイル · 0.2 s で開く Arena で開く

ファイルを貼り付ける。
型の全体を見る。

アカウント不要、アップロード不要、インストール不要 — 両コンパイラはすでにタブ内にあります。

Arena を開く
tsrs.run

TypeScript のための型顕微鏡 — X-Ray ツリー、構造化エラー差分、2 エンジンのスピードメーターを、すべてブラウザで。

本プロジェクトは @tsrs/wasm と oxc-project を基盤とする独立したコミュニティプロジェクトです。TypeScript は Microsoft Corporation の商標です。ベンチマークとレポートの数値はサンプル実行によるもので、お使いのデバイス上で再計算されます。

© 2026 tsrs.run · ローカルで実行