OSS探訪

TypeScriptとHTML5 CanvasでActor・scene・physics・graphicsを構成するWeb向け2D game engine

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
2,348
主要言語
TypeScript
ライセンス
BSD-2-Clause
リポジトリ最終更新
2026/10/03
ページ内ナビ

概要

ExcaliburはTypeScriptで実装されたWeb向け2D game engineです。HTML5 Canvas上でActor、Scene、graphics、physics、input、camera、tilemap等を組み合わせ、browserで動く2D gameを構築できます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

ActorとSceneを中心に2D game objectを構成する

engine boilerplateを隠しつつ、ActorやScene等のAPIからgame object、position、graphics、lifecycleをTypeScriptで組み立てられます。

出典:[1][2]

HTML5 Canvasとbrowser環境をtargetする

ExcaliburはHTML5 Canvas向けengineで、desktop/mobile browserのcross-platform testingを重視しています。

出典:[1]

npm packageとTypeScript definitionsから既存Web buildへ組み込む

0.32.0 packageはESM/CommonJS entryとTypeScript declarationを公開し、Vite等のmodern frontend buildへ組み込めます。

出典:[2]

向いている用途

TypeScriptで2D browser gameを短く構築したい場合に向く

game loop、scene、physics、input等のengine機能を自作せず、Web stackとTypeScript ecosystemを活かしたいprojectに適します。

出典:[1]

導入前の確認

0.xのためrelease間のbreaking changeを前提にversion固定する

READMEは0.xでbreaking changesが発生すると明示しています。engineとplugin versionを固定し、upgrade時にgame behaviorを回帰testします。

出典:[1]

0.32.0はdeveloper experienceとperformance変更が中心

0.32.0ではdebug draw、offscreen、tilemap、collision、physics等のperformance改善やAPI usability変更があります。performance-sensitive sceneは実gameで再計測します。

出典:[3]

参考にした公式資料

  1. [1]Excalibur 0.32.0 README(2026-10-04)
  2. [2]Excalibur 0.32.0 package metadata(2026-10-04)
  3. [3]Excalibur 0.32.0 release(2026-10-04)
  4. [4]Excalibur BSD-2-Clause license(2026-10-04)
編集部からの補足

Excaliburはまだ0.xで、READMEもrelease間のbreaking change発生を明示しています。versionを固定し、engine/plugin upgrade時はrendering・physics・input・asset pipelineの回帰testを行ってください。0.32.0はdeveloper experienceとperformance改善が中心です。

3ステップで試す

  1. 1

    Excalibur 0.32.0用のlocal projectを作成する

    engineとTypeScript compilerをversion固定で追加します。

    mkdir -p excalibur-demo && cd excalibur-demo && npm init -y && npm install excalibur@0.32.0 typescript@5.6.3
  2. 2

    Actor APIを使う最小TypeScript fileを作る

    browserを起動せずtype/API compatibilityを確認する最小codeにします。

    printf 'import { Actor, vec } from "excalibur";\nconst actor = new Actor({ pos: vec(10, 20), width: 16, height: 16 });\nconsole.log(actor.pos);\n' > excalibur-demo/index.ts
  3. 3

    DOM type込みでtype-checkする

    renderingを開始せず0.32.0のTypeScript definitionsとsampleが整合することを確認します。

    cd excalibur-demo && npx tsc --noEmit --module esnext --moduleResolution bundler --target es2022 --lib es2022,dom index.ts
公式READMEで確認

成長

成長の推移 · 直近30日

2,348 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
46
Open PR
14

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • excalibur
  • game-development
  • game-engine
  • gamedev
  • typescript
  • html5-canvas
  • game-framework
  • games
  • excaliburjs
Stars
2,348
Forks
226
Watchers
35
Open Issues
37
Contributors
114
所有者種別
Organization
主要言語
TypeScript
ライセンス
BSD-2-Clause
リポジトリ最終更新
2026/10/03

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?