Repolode
xtermjs

xtermjs/xterm.js

ブラウザー上でWebアプリに高機能なターミナルを埋め込めるフロントエンドコンポーネント。VS CodeやHyperでも使われています。

スター
21,287
フォーク
2,021
未解決の Issue
322
最終コミット
9 日前

これは何?

Xterm.jsは、Webアプリケーション内でユーザーに完全なターミナルを表示するためのフロントエンドコンポーネントです。VS Codeやそのフォーク、Tabby、Hyperなどのプロジェクトで使われています。npmから@xterm/xtermとしてインストールでき、コアライブラリに依存関係はありません。

Xterm.jsは単体で動作するターミナルアプリでもシェルでもありません。出力を描画してキーボード入力を転送し、通常はnode-ptyなどの擬似端末APIを介してプロセスに接続します。bash、vim、tmuxなどのターミナルプログラムに対応し、cursesベースのアプリやマウスイベントも扱えます。CJK文字、絵文字、IMEに対応しており、オプションでGPUアクセラレーションを利用するWebGLレンダラーも使えます。

コンテナに合わせたサイズ調整、検索、Webリンクの検出、画像表示、クリップボードアクセス、合字、シリアライズ用の公式アドオンが用意されています。ヘッドレス版の@xterm/headlessはNode.jsで動作し、描画せずにターミナルの状態を追跡します。

主な機能

  • 01bash、vim、tmuxなどの一般的なターミナルアプリに対応し、マウスイベントも扱えます。
  • 02CJK文字、絵文字、IMEに対応しています。
  • 03オプションでGPUアクセラレーション対応のWebGLレンダラーを利用できます。
  • 04コアライブラリに依存関係がなく、npmパッケージとして提供されています。
  • 05検索、Webリンク、サイズ調整、画像表示などに対応する公式アドオンが用意されています。

ユースケース

  • オンラインIDEやクラウド開発環境にWebベースのターミナルを追加する。
  • WebSocket経由で接続するブラウザーSSHクライアントやリモートシェルクライアントを構築する。
  • ダッシュボードでターミナル表示を使い、コンテナやビルドのログをリアルタイムに表示する。
  • Node.jsでヘッドレスターミナルを動かし、セッション状態を保存・復元する。

クイックスタート

  1. 1

    npmからモジュールをインストールする

    npm install --save @xterm/xterm
  2. 2

    コードでTerminalをインポートする

    import { Terminal } from '@xterm/xterm';
  3. 3

    ターミナルを作成し、要素上で開いて書き込む

  4. 4

    ページにxterm.cssスタイルシートを読み込む

使う前に知っておきたいこと

  • これはブラウザー向けのフロントエンドコンポーネントであり、単体で動作するターミナルアプリケーションではありません。
  • bashなどのコマンドを実行するには、node-ptyなどのバックエンドプロセスに接続する必要があります。

トピック

よくある質問

xterm.js とは?
ブラウザー上でWebアプリに高機能なターミナルを埋め込めるフロントエンドコンポーネント。VS CodeやHyperでも使われています。 Xterm.jsは、Webアプリケーション内でユーザーに完全なターミナルを表示するためのフロントエンドコンポーネントです。VS Codeやそのフォーク、Tabby、Hyperなどのプロジェクトで使われています。npmから@xterm/xtermとしてインストールでき、コアライブラリに依存関係はありません。
xterm.js は無料で使えますか?ライセンスは?
xterm.js は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
xterm.js は今もメンテナンスされていますか?
活発にメンテナンス中。xterm.js の最終コミットは 2026年10月13日 です。
xterm.js は何に使えますか?
オンラインIDEやクラウド開発環境にWebベースのターミナルを追加する。 WebSocket経由で接続するブラウザーSSHクライアントやリモートシェルクライアントを構築する。 ダッシュボードでターミナル表示を使い、コンテナやビルドのログをリアルタイムに表示する。 Node.jsでヘッドレスターミナルを動かし、セッション状態を保存・復元する。
xterm.js のインストール方法は?
npmからモジュールをインストールする: npm install --save @xterm/xterm コードでTerminalをインポートする: import { Terminal } from '@xterm/xterm'; ターミナルを作成し、要素上で開いて書き込む ページにxterm.cssスタイルシートを読み込む
xterm.js はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/xtermjs/xterm.js

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト