three.js vs Phaser
three.js
three.js contributors (mrdoob)
Phaser
Phaser Studio Inc.
Phaser wins · 13–14 (20 drawn)
Agenticness — how well agents can access and operate the productAgenticness
How well agents can access and operate the product
Agent access
ai-native userPoint an agent at llms.txt or agent-oriented docs
weight 2 · round to three.jsthree.js publishes a llms.txt at its site root (HTTP 200 confirmed by probe) with an explicit 'Instructions for Large Language Models' section and a 363KB llms-full.txt covering complete docs, giving agents a direct machine-readable path. missing for 10: independent/community confirmation that agents actually use this llms.txt successfully in practice, and per-page markdown docs are hash-routed rather than statically addressable.
- [probe] “PROBE llms.txt: HTTP 200 at https://threejs.org/llms.txt # Three.js > Three.js is a cross-browser JavaScript library for creating 3D graphi…”
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
- [claimed-docs] “TSL benefits: - Works with both WebGL and WebGPU backends - No string manipulation or onBeforeCompile hacks”
- [claimed-docs] “TSL benefits: - Works with both WebGL and WebGPU backends - No string manipulation or onBeforeCompile hacks - Type-safe, composable shader n…”
A live llms.txt was found at phaser.io/llms.txt (an examples-API index) and Phaser Studio publishes agent-oriented docs/MCP server pages (phaser.io/agent/mcp) explicitly for connecting coding agents, but the more commonly probed docs.phaser.io/llms.txt returns 404 and the site root 403s non-browser clients, requiring a browser UA and precise deep links to succeed. Missing for 10: a consistently discoverable llms.txt across the main docs domain, no 403/404 friction for automated agent fetches, and independent confirmation that agents can reliably ingest these docs.
- [probe] “PROBE llms.txt: HTTP 404 at https://docs.phaser.io/llms.txt”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
- [probe] “official MCP server documented at https://phaser.io/agent/mcp”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
ai-native userRun the product headlessly / in CI for automation
weight 2 · round drawnthree.jsnone0/10Three.js is fundamentally a browser WebGL/WebGPU library requiring a GPU-backed rendering context; the evidence pack contains no mention of headless rendering, Node.js server-side use, headless-gl/puppeteer integration, or CI automation support. This is a fair question for a rendering engine (other engines in this space document headless CI paths), so absence of evidence means 'none' rather than 'na'.
Phasernone0/10The evidence pack covers installation, scenes, physics, animations, editor and MCP agent features, but nothing addresses headless execution or CI-based automation for Phaser games/tests. Since browser-based game engines can in principle support headless rendering or CI test harnesses, this is a fair but unaddressed axis rather than a category error.
ai-native userConnect an agent via an official MCP server
weight 3 · round to Phaserthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
Phaser Studio ships an official 'Phaser Game Agent' MCP server (phaser.io/agent/mcp) documented with 40+ specialized tools and explicit integration with Claude Desktop, Cursor, and GitHub Copilot, letting external agents connect and build games via plain-language commands. Missing for 10: independent/hands-on community validation that the MCP server works as advertised, and clarity on self-hosted/npm distribution (probe found no @phaserjs MCP package on npm, only a hosted endpoint).
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
- [claimed-docs] “You describe what you want in plain language and your agent calls the tools for you.”
- [claimed-docs] “Give the player a double-jump and a coin counter.The jump feels floaty, make gravity stronger.”
- [probe] “official MCP server documented at https://phaser.io/agent/mcp”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
ai-native userUse an official CLI
weight 2 · round to Phaserthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
Phaser docs confirm an official CLI tool for scaffolding projects (interactive selection of templates/demo games), which counts as an official CLI, but it is described as interactive Q&A rather than a scriptable/agent-friendly interface, and there's no documentation of flags or non-interactive mode suited for AI-native automated use. missing for 10: evidence of non-interactive/programmatic CLI flags, AI-agent-oriented CLI documentation, and independent confirmation of CLI usability by agents.
- [claimed-docs] “This CLI tool presents an interactive selection of official project templates and demo games.”
- [claimed-docs] “This CLI tool presents an interactive selection of official project templates and demo games. Issue the command, answer some questions and t…”
ai-native userDrive the product through a documented public API
weight 3 · round to Phaserthree.js exposes a well-documented JS API (WebGLRenderer/WebGPURenderer, TSL, GLTFLoader, controls) and even publishes llms.txt/llms-full.txt files explicitly aimed at LLM consumption, which supports AI-native driving of the library via npm. However this is a client-side JS library API, not a service with an OpenAPI/REST spec or an MCP server, and probes confirm no OpenAPI endpoints and no official MCP server exist. missing for 10: OpenAPI/machine-readable API spec, official MCP server, per-page static doc URLs (docs are hash-routed, only llms.txt is the structured machine path).
- [probe] “PROBE llms.txt: HTTP 200 at https://threejs.org/llms.txt # Three.js > Three.js is a cross-browser JavaScript library for creating 3D graphi…”
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
- [probe] “PROBE openapi: all candidate paths 404 (https://threejs.org/openapi.json, https://threejs.org/swagger.json, https://threejs.org/api/openapi.…”
- [claimed-docs] “TSL benefits: - Works with both WebGL and WebGPU backends - No string manipulation or onBeforeCompile hacks”
- [claimed-docs] “[GLTFLoader](https://threejs.org/docs/#examples/en/loaders/GLTFLoader)”
- [github] “const renderer = new THREE.WebGLRenderer( { antialias: true } ); renderer.setSize( width, height );”
Phaser ships an extensive, versioned public JS/TS API (Scenes, physics, input, loader, animations) documented at docs.phaser.io with full TypeScript definitions, which is exactly the kind of documented public API an AI agent needs to generate/drive game code programmatically; the runtime probe also shows phaser.io/llms.txt now serving a live, programmatic examples-API index tailored for AI consumption. Missing for 10: a formal machine-readable spec (OpenAPI) for the core API surface — probes show OpenAPI/swagger endpoints all 404 — so discovery still relies on human-oriented docs rather than a fully machine-consumable contract.
- [claimed-docs] “Full TypeScript definitions can be found inside the types folder”
- [claimed-docs] “This will allow you to control the Sprite using the built-in physics functions, such as velocity, acceleration, gravity, etc.”
- [claimed-docs] “Phaser maintains a unified input system that works across all browsers and devices.”
- [claimed-docs] “Common asset types include images, texture atlases, sprite sheets, fonts, audio files and JSON data, but there are many more that Phaser can…”
- [claimed-docs] “Animations are created via the Animation Manager.”
- [probe] “PROBE llms.txt: HTTP 404 at https://docs.phaser.io/llms.txt”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.phaser.io/openapi.json, https://docs.phaser.io/swagger.json, https://docs.phaser.io/api…”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
ai-native userBuild against official SDKs
weight 2 · round to Phaserthree.js publishes an llms.txt/llms-full.txt with explicit LLM instructions and is consumable directly via npm, and it is an official, well-documented SDK (WebGL/WebGPU renderers, TSL, GLTFLoader, controls). However, this is a library/API rather than an 'agentic' SDK with tool-calling or agent-specific integration hooks, and there is no official MCP server or agent-oriented tooling beyond docs formatted for LLM consumption. missing for 10: no agent-specific SDK features (e.g., function-calling schemas, MCP server), no independent verification of llms.txt actually improving agent code generation, human docs are hash-routed rather than crawlable per-page.
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
- [probe] “PROBE llms.txt: HTTP 200 at https://threejs.org/llms.txt # Three.js > Three.js is a cross-browser JavaScript library for creating 3D graphi…”
- [claimed-docs] “TSL benefits: - Works with both WebGL and WebGPU backends - No string manipulation or onBeforeCompile hacks”
- [claimed-docs] “[GLTFLoader](https://threejs.org/docs/#examples/en/loaders/GLTFLoader)”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
Phaser itself is the official SDK: it's distributed via npm, an official CLI, a CDN, and ships full TypeScript definitions, all documented in first-party docs and corroborated by community usage (games built in JS/TS, TypeScript experience feedback). Missing for 10: independent/third-party audit of the SDK's completeness and explicit multi-platform SDK packaging (e.g., official native wrappers) beyond docs claims.
- [claimed-docs] “npm install phaser”
- [claimed-docs] “Full TypeScript definitions can be found inside the types folder”
- [claimed-docs] “Install via [npm](https://www.npmjs.com/package/phaser): npm install phaser”
- [claimed-docs] “This CLI tool presents an interactive selection of official project templates and demo games. Issue the command, answer some questions and t…”
- [claimed-docs] “Phaser is on jsDelivr which is a "super-fast CDN for developers". Include _either_ of the following in your html”
- [github] “You can use JavaScript or TypeScript for development.”
- [community] “I've spent the past 6 months building a game using Phaser and TypeScript. On the whole, it's been a great experience... one of the worst par…”
- [community] “Phaser 4 was announced ~four years ago and was an attempt to get the project written natively in TypeScript. It looks pretty dead in the wat…”
Agentic features
ai-native userGet AI-generated insights and suggestions from my data inside the product
weight 2 · round drawnthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
ai-native userSet up automations that run autonomously in the background
weight 2 · round drawnthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
ai-native userDelegate tasks to a built-in AI assistant inside the product
weight 3 · round drawnthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
Phasernone0/10Phaser's AI-related evidence (phaser-docs-13/14/15) describes an MCP server that lets *external* coding agents (Claude Desktop, Cursor, Copilot) call Phaser Editor tools — the opposite relationship of a built-in assistant living inside the product that a user delegates tasks to. No evidence shows a native, in-product chat/assistant feature.
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
- [claimed-docs] “You describe what you want in plain language and your agent calls the tools for you.”
- [probe] “official MCP server documented at https://phaser.io/agent/mcp”
ai-native userOperate the product with natural-language commands
weight 2 · round to Phaserthree.js publishes an llms.txt/llms-full.txt specifically to let AI coding agents generate code that drives the library, which is a step toward AI-native operability, but there is no natural-language command interface, chat layer, or MCP server that lets a user directly 'command' the renderer in natural language — an agent still has to write and run JavaScript. Missing for 10: a direct natural-language control layer, an MCP server or agent API, and independent evidence of agents successfully operating three.js purely via NL commands.
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
- [probe] “PROBE llms.txt: HTTP 200 at https://threejs.org/llms.txt # Three.js > Three.js is a cross-browser JavaScript library for creating 3D graphi…”
- [claimed-docs] “TSL benefits: - Works with both WebGL and WebGPU backends - No string manipulation or onBeforeCompile hacks”
Phaser ships an official hosted 'Game Agent' MCP server that lets users describe changes in plain language (e.g., 'Give the player a double-jump...') and have the agent call over 40 specialised tools inside the Scene Editor, integrating with Claude Desktop, Cursor, and Copilot — directly matching natural-language operation. This is corroborated by a runtime probe confirming the live MCP endpoint at phaser.io/agent/mcp. Missing for 10: independent/community hands-on validation of the MCP agent's reliability and no npm-distributed MCP package (only hosted), so evidence is vendor-only.
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
- [claimed-docs] “You describe what you want in plain language and your agent calls the tools for you.”
- [claimed-docs] “Give the player a double-jump and a coin counter.The jump feels floaty, make gravity stronger.”
- [claimed-docs] “Create a particle emitter, reorganise a scene into layers, rename a bunch of objects — it handles it without switching tools.”
- [probe] “official MCP server documented at https://phaser.io/agent/mcp”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
Api quality
ai-native userExplore an interactive API reference with runnable examples
weight 2 · round to three.jsthree.js has a documented interactive examples gallery (threejs.org/examples) and an extensive docs/manual with API references, plus an llms.txt/llms-full.txt tailored for AI agents to consume the API reference programmatically. However, the examples are not runnable/editable inline within the docs reference itself in an AI-native interactive way, there's no API playground or embedded live code editor tied to reference pages, and human doc pages are hash-routed rather than having stable per-page URLs, limiting agentic navigation. missing for 10: inline runnable/editable examples embedded in API reference pages, stable per-page doc URLs for agent navigation, and any dedicated interactive playground/sandbox tool.
- [claimed-docs] “three.js examples”
- [claimed-docs] “[docs](manual/#en/creating-a-scene) [examples](examples/#webgl_animation_keyframes)”
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
- [probe] “PROBE llms.txt: HTTP 200 at https://threejs.org/llms.txt # Three.js > Three.js is a cross-browser JavaScript library for creating 3D graphi…”
- [community] “the three.js examples are good (if a little sloppy in coding style). I think the main thing that helps is some kind of previous knowledge ab…”
Community evidence confirms Phaser has an extensive examples library ('many examples and docs to work from' — phaser-comm-7), and a runtime probe shows docs.phaser.io/llms.txt now serves as a programmatic examples-API index with endpoints to fetch full source code per example (phaser-probe-rt-1), which is useful for AI-native exploration. However, there is no first-party evidence of an interactive, runnable-in-browser API reference (no OpenAPI/API-reference page found, docs-md and llms.txt initially 404'd per probes), so the story is only partially substantiated. Missing for 10: dedicated interactive API reference UI with live code execution, confirmation the examples API is documented/stable, independent hands-on account of using it.
- [community] “I've made a couple toy projects with Phaser, after comparing other Javascript based 2d engines. Phaser is the most fully featured amongst th…”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
- [probe] “PROBE llms.txt: HTTP 404 at https://docs.phaser.io/llms.txt”
- [probe] “PROBE docs-md: HTTP 404 at https://docs.phaser.io/phaser/getting-started/what-is-phaser.md”
ai-native userDownload a machine-readable API spec (OpenAPI or equivalent)
weight 2 · round to three.jsThree.js has no OpenAPI/Swagger spec (explicit probe of openapi.json/swagger.json paths all 404), but it does publish an 'equivalent' machine-readable artifact for AI consumption: a root-level llms.txt with an explicit 'Instructions for Large Language Models' section and a 363KB llms-full.txt covering the full API surface. This is a documentation-style machine-readable spec rather than a structured, typed API schema (no parameter/type schema, no endpoint-like structure). Missing for 10: a structured schema format (OpenAPI-equivalent with typed signatures), and any indication the llms.txt is treated as a formal versioned spec rather than prose docs.
- [probe] “PROBE llms.txt: HTTP 200 at https://threejs.org/llms.txt # Three.js > Three.js is a cross-browser JavaScript library for creating 3D graphi…”
- [probe] “PROBE openapi: all candidate paths 404 (https://threejs.org/openapi.json, https://threejs.org/swagger.json, https://threejs.org/api/openapi.…”
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
Phaser ships full TypeScript type definitions (phaser-docs-4) which function as a machine-readable description of its API surface and can be consumed by tooling/agents, but there is no formal OpenAPI/Swagger spec or comprehensive llms.txt for the full API — probes confirm openapi.json/swagger.json 404 and the only live llms.txt is a narrow examples-index API, not a full API spec (phaser-probe-1, phaser-probe-3, phaser-probe-rt-1). missing for 10: a dedicated OpenAPI/JSON-schema style spec covering the full public API, and an official downloadable machine-readable spec beyond TS typings/examples index.
- [claimed-docs] “Full TypeScript definitions can be found inside the types folder”
- [probe] “PROBE llms.txt: HTTP 404 at https://docs.phaser.io/llms.txt”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.phaser.io/openapi.json, https://docs.phaser.io/swagger.json, https://docs.phaser.io/api…”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
ai-native userTest against a sandbox environment without touching production data
weight 1 · round drawnthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
ai-native userRely on versioned APIs with a documented deprecation policy
weight 2 · round to three.jsThere is a Migration Guide and per-release notes documenting breaking changes between versions (e.g. 185→186), and npm shows a clear version number (0.186.0), but nothing describes a formal deprecation policy (notice periods, stable API guarantees, semver commitments) — three.js is known for frequent breaking changes on its own rolling release cadence. missing for 10: explicit deprecation policy statement, semver/API-stability guarantees, notice period before removals.
- [claimed-docs] “[Migration Guide](/mrdoob/three.js/wiki/Migration-Guide)”
- [claimed-docs] “https://github.com/mrdoob/three.js/wiki/Migration-Guide#185--186”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
Phasernone0/10No evidence of a documented deprecation policy, semver commitments, or API-stability guarantees; the only version-related evidence notes Phaser 2→3 broke compatibility ("States"... won't work in Phaser 3) with no stated migration/deprecation process, and probes found no OpenAPI/versioned docs artifacts.
- [claimed-docs] “If you find any reference to States in code or a tutorial you've found online, it's for Phaser 2 and likely won't work in Phaser 3.”
- [community] “Phaser 4 was announced ~four years ago and was an attempt to get the project written natively in TypeScript. It looks pretty dead in the wat…”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.phaser.io/openapi.json, https://docs.phaser.io/swagger.json, https://docs.phaser.io/api…”
Ai workflows — AI in the engine loop — agent-driven editors, copilots, codegen-friendly APIs, runtime inferenceAi workflows
AI in the engine loop — agent-driven editors, copilots, codegen-friendly APIs, runtime inference
Agent editor
ai-native userAn agent can drive the editor and project programmatically — create scenes and nodes, edit properties, trigger builds — through a documented scriptable interface
weight 3 · round to PhaserThree.js's core JS API lets an agent create scenes, nodes, meshes, and materials and edit properties programmatically (documented in llms.txt for LLM consumption), but this is just using the library — there's no evidence of a documented scripting/automation interface for the standalone three.js editor app itself, nor any 'trigger build' concept or API. Missing for 10: documented editor automation/scripting API, evidence of programmatic control of the editor UI, and any build/export trigger mechanism.
- [claimed-docs] “three.js editor”
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
- [github] “This code creates a scene, a camera, and a geometric cube, and it adds the cube to the scene. It then creates a `WebGL` renderer for the sce…”
- [claimed-docs] “[docs](manual/#en/creating-a-scene) [examples](examples/#webgl_animation_keyframes)”
Phaser Studio ships an official 'Phaser Game Agent' MCP server with 40+ specialized tools that integrates with Claude Desktop, Cursor, GitHub Copilot and other MCP clients, letting an agent create particle emitters, reorganize scenes into layers, rename objects, tweak physics/animations, and add filters via natural-language commands routed through documented tool calls — directly matching the 'agent drives the editor programmatically' story. Runtime probe confirms the hosted MCP endpoint is live and documented at phaser.io/agent/mcp. missing for 10: independent/hands-on third-party verification that the MCP tools reliably perform builds/edits, and a published open API/tool reference (npm package) beyond the marketing page.
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
- [claimed-docs] “You describe what you want in plain language and your agent calls the tools for you.”
- [claimed-docs] “Give the player a double-jump and a coin counter.The jump feels floaty, make gravity stronger.”
- [claimed-docs] “Create a particle emitter, reorganise a scene into layers, rename a bunch of objects — it handles it without switching tools.”
- [probe] “official MCP server documented at https://phaser.io/agent/mcp”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
Codegen
ai-native userLLM-generated code mostly works on the first try — stable, well-documented APIs with abundant public examples the models have seen
weight 2 · round drawnThree.js is hugely popular (12M weekly npm downloads) with abundant public examples and even a dedicated llms.txt/llms-full.txt tailored for LLM consumption, which strongly favors first-try LLM code generation. However, community evidence and the docs themselves point to real friction: frequent breaking API changes requiring per-version migration guides, explicit warnings to use 'CORRECT - modern pattern' import maps (implying old LLM-trained patterns break), and hands-on reports that seemingly simple tasks (loading a model) were unexpectedly hard, undermining 'mostly works on the first try.' Missing for 10: independent benchmark/report of LLM-generated three.js code success rate, and stronger evidence that API stability (not just doc richness) prevents version-mismatch failures.
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
- [claimed-docs] “CORRECT - modern pattern (always use latest version): html <script type="importmap">”
- [claimed-docs] “[Migration Guide](/mrdoob/three.js/wiki/Migration-Guide)”
- [community] “I've tried to follow three.js's own tutorials, and slip into coma every time. These are a vast improvement!”
- [community] “I was super excited to use Three.js and thought it would be easy to do what I wanted. What I wanted to do was load a simple .obj model and d…”
- [community] “there are some function signatures that don't match what's in the code using @types/three, and mrdoob does not want to maintain this. This g…”
Phaser has extensive first-party docs, TypeScript definitions, and a long history (widely used since ~2013) that HN commenters confirm produced 'many examples and docs to work from' and 'great documentation,' supporting LLM familiarity. However, other independent reports directly contradict doc quality ('worst documentation... very bad design') and TypeScript support is described as a 'best-effort' bolt-on rather than native, plus the docs explicitly warn that pre-Phaser-3 tutorials/code (States) will not work — all of which undercut first-try reliability for LLM-generated code. Missing for 10: no direct evidence of LLM-generated Phaser code being tested/benchmarked, no resolution of the conflicting doc-quality reports, and no confirmation that the API has stabilized enough to avoid version-mismatch pitfalls.
- [community] “I've made a couple toy projects with Phaser, after comparing other Javascript based 2d engines. Phaser is the most fully featured amongst th…”
- [community] “After trying out several HTML5/JS game libraries, I'm pretty sure that Phaser is the best one for 2D games. It has frequent updates, great d…”
- [community] “I've spent the past 6 months building a game using Phaser and TypeScript. On the whole, it's been a great experience... one of the worst par…”
- [community] “The documentation of Phaser is the worst i've seen to a popular framework. The website is very bad in the design, styling as well as content…”
- [community] “It's still rough around the edges, but I have no doubt Phaser 3 will get to feature complete. What's holding me back is lack of TypeScript d…”
- [community] “Phaser 4 was announced ~four years ago and was an attempt to get the project written natively in TypeScript. It looks pretty dead in the wat…”
- [claimed-docs] “If you find any reference to States in code or a tutorial you've found online, it's for Phaser 2 and likely won't work in Phaser 3.”
- [claimed-docs] “Full TypeScript definitions can be found inside the types folder”
Copilot
ai-native userAn official AI assistant inside the engine helps with engine tasks — generating scripts, answering API questions, scaffolding scenes or assets
weight 2 · round to Phaserthree.jsnone0/10Evidence shows only LLM-friendly documentation (llms.txt) and no in-engine AI assistant, chat copilot, or code-generation assistant feature; probe explicitly notes no MCP server or agent integration exists, official or community.
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
- [probe] “PROBE llms.txt: HTTP 200 at https://threejs.org/llms.txt # Three.js > Three.js is a cross-browser JavaScript library for creating 3D graphi…”
Phaser Studio ships an official 'Phaser Game Agent' MCP server with 40+ specialized tools that integrates with Claude Desktop, Cursor, and Copilot, letting users describe changes in plain language (e.g. 'give the player a double-jump', 'create a particle emitter, reorganise a scene into layers') and have the agent execute them in the editor — directly matching the scaffolding/scripting parts of the story. However this is a separate hosted MCP server/agent rather than an assistant embedded 'inside the engine' itself, and there's no evidence it specifically answers API/documentation questions, nor any independent hands-on corroboration of its effectiveness. Missing for 10: evidence of API Q&A capability, first-party/independent hands-on validation of code-generation quality, and confirmation it's embedded in-engine rather than an external connected tool.
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
- [claimed-docs] “You describe what you want in plain language and your agent calls the tools for you.”
- [claimed-docs] “Give the player a double-jump and a coin counter.The jump feels floaty, make gravity stronger.”
- [claimed-docs] “Create a particle emitter, reorganise a scene into layers, rename a bunch of objects — it handles it without switching tools.”
- [probe] “official MCP server documented at https://phaser.io/agent/mcp”
Asset pipeline — getting content in — automated import, formats, marketplacesAsset pipeline
Getting content in — automated import, formats, marketplaces
Formats
technical artistStandard interchange formats — glTF, FBX, USD — import cleanly
weight 2 · round to three.jsOnly GLTFLoader is explicitly evidenced as a documented import path; there is no mention of FBX or USD loaders in the evidence pack, and a community report describes friction loading even a simple OBJ model, undercutting the 'imports cleanly' framing. Missing for 10: FBXLoader/USDLoader documentation or examples, first-party guidance on interchange-format fidelity, and independent confirmation that glTF/FBX/USD assets import without manual fixes.
- [claimed-docs] “[GLTFLoader](https://threejs.org/docs/#examples/en/loaders/GLTFLoader)”
- [community] “I was super excited to use Three.js and thought it would be easy to do what I wanted. What I wanted to do was load a simple .obj model and d…”
Import
technical artistAsset import is automatable — import hooks, presets, and pipeline scripts process incoming assets without hand-clicking each one
weight 2 · round drawnthree.jsnone0/10three.js is a rendering library with a GLTFLoader and asset loaders, but there is no evidence of automatable asset-import pipelines, import hooks, presets, or scripted batch-processing of incoming assets — everything in the evidence pack concerns runtime rendering APIs, TSL/WebGPU, and manual loader usage rather than pipeline automation.
- [claimed-docs] “[GLTFLoader](https://threejs.org/docs/#examples/en/loaders/GLTFLoader)”
- [github] “The current builds only include WebGL and WebGPU renderers but SVG and CSS3D renderers are also available as addons.”
Phasernone0/10Phaser's docs cover its runtime Loader for fetching common asset types (images, atlases, audio) and an editor/MCP agent for interactive scene building, but there is no evidence of asset-import automation tooling (import hooks, preset-based pipelines, or scripts that batch-process incoming source assets before they reach the game) as a build-time pipeline feature. Missing for 10: any documented import-hook API, preset/config-driven asset processing, or pipeline scripting for automating asset ingestion.
- [claimed-docs] “Common asset types include images, texture atlases, sprite sheets, fonts, audio files and JSON data, but there are many more that Phaser can…”
- [claimed-docs] “Drag and drop objects into place, tweak their animations, adjust their physics bodies, enable special effects and more as you go.”
- [claimed-docs] “Add and configure filters visually — Glow, Shadow, Blur, Pixelate, Bokeh, ColorMatrix, Displacement and more — directly in the Scene Editor'…”
Marketplace
game developerA large asset store or package ecosystem gives me ready-made models, tools, and plugins
weight 2 · round drawnthree.jsnone0/10Evidence only shows three.js's own built-in addons (GLTFLoader, OrbitControls, editor, devtools) and npm package popularity, not a third-party asset store or plugin marketplace comparable to Unity/Unreal ecosystems; community commentary even notes basic model loading (.obj) was painful. missing for 10: any evidence of a dedicated asset store, marketplace, or curated third-party plugin ecosystem for game assets/tools.
- [claimed-docs] “[GLTFLoader](https://threejs.org/docs/#examples/en/loaders/GLTFLoader)”
- [claimed-docs] “[OrbitControls](https://threejs.org/docs/#examples/en/controls/OrbitControls) - [TransformControls](https://threejs.org/docs/#examples/en/co…”
- [claimed-docs] “three.js editor”
- [claimed-docs] “[devtools](https://chromewebstore.google.com/detail/threejs-devtools/jechbjkglifdaldbdbigibihfaclnkbo)”
- [community] “I was super excited to use Three.js and thought it would be easy to do what I wanted. What I wanted to do was load a simple .obj model and d…”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
Phasernone0/10Evidence covers Phaser's editor, MCP agent tooling, npm install, CDN and framework integrations, but there is no mention of a dedicated asset store, marketplace, or curated plugin ecosystem (à la Unity Asset Store) offering ready-made models/tools/plugins. Missing for 10: evidence of an official or third-party asset marketplace, a plugin registry, or curated ready-made asset packages.
Automation depth — how much of the product can run unattendedAutomation depth
How much of the product can run unattended
ai-native userPerform bulk operations across many items at once
weight 2 · round to Phaserthree.jsnone0/10No evidence describes batch/bulk APIs (e.g., instancing, scene-graph batch edits) or automation tooling for operating on many items at once; the evidence pack only covers renderer setup, TSL, loaders, and controls.
The Editor/MCP agent evidence mentions handling tasks like renaming multiple objects and reorganizing scenes without switching tools, implying some bulk-editing capability, but there's no detailed documentation of a systematic bulk-operations API or workflow for AI agents. Missing for 10: explicit bulk-edit tooling/API docs, examples of batch operations across many assets/scenes, and independent confirmation of this capability working at scale.
- [claimed-docs] “Create a particle emitter, reorganise a scene into layers, rename a bunch of objects — it handles it without switching tools.”
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
ai-native userDefine rules that trigger actions automatically on events
weight 3 · round drawnthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
Phasernone0/10Phaser's docs mention a unified input system and scene lifecycle events, but no evidence describes a rule-engine or declarative trigger system where events automatically fire configured actions (e.g., an event-emitter/automation API is never documented in the pack). Missing for 10: documentation of an event-emitter/listener API, examples of rule-based automation, and any AI-native tooling for defining trigger→action rules.
- [claimed-docs] “Phaser maintains a unified input system that works across all browsers and devices.”
- [claimed-docs] “Typical uses for a Scene would be a Loading Screen, a Main Menu, a Game Level, a Boss Fight, an in-game Item Shop, a High Score Table, etc.”
- [claimed-docs] “you can pause, resume and sleep a Scene at will, and that you can easily run multiple Scenes at the same time.”
ai-native userVersion, review, and roll back my automations
weight 1 · round drawnthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
Core engine — the engine core — rendering, 2D, physics, performance at scaleCore engine
The engine core — rendering, 2D, physics, performance at scale
2d
game developer2D is a first-class workflow — sprites, tilemaps, 2D physics — not a 3D afterthought
weight 2 · round to Phaserthree.jsnone0/10The evidence pack shows three.js is positioned and documented purely as a 3D graphics library (WebGL/WebGPU renderers, TSL shaders, GLTFLoader, OrbitControls) with no mention of sprites, tilemaps, or 2D physics as first-class citizens; 2D is at best an afterthought achievable via workarounds, consistent with community comments about needing workarounds for things it wasn't built for.
- [probe] “PROBE llms.txt: HTTP 200 at https://threejs.org/llms.txt # Three.js > Three.js is a cross-browser JavaScript library for creating 3D graphi…”
- [github] “The current builds only include WebGL and WebGPU renderers but SVG and CSS3D renderers are also available as addons.”
- [claimed-docs] “**Use WebGPURenderer** when you need: - Custom shaders/materials using TSL (Three.js Shading Language) - Compute shaders - Advanced node-bas…”
- [community] “Three.js is insane, in a good way. Great abstraction of WebGL, very user friendly, and surprisingly few things that it can't do, as long as …”
Phaser's docs and community feedback confirm sprites, scenes, arcade physics, animations, tilemaps/atlases, and input are core, well-documented primitives rather than bolted-on features, and community comments reinforce it as a dedicated 2D engine (comparisons to Pixi/Love2D, 'fits 2D, sprites, tilemaps, physics'). missing for 10: independent hands-on benchmarking of tilemap-specific workflows and no explicit dedicated tilemap doc excerpt in the pack (only physics/scenes/animations/input are directly quoted).
- [claimed-docs] “Typical uses for a Scene would be a Loading Screen, a Main Menu, a Game Level, a Boss Fight, an in-game Item Shop, a High Score Table, etc.”
- [claimed-docs] “it's a common practise to have a Scene dedicated entirely to handling the UI for your game, that is rendered above all other Scenes”
- [claimed-docs] “This will allow you to control the Sprite using the built-in physics functions, such as velocity, acceleration, gravity, etc.”
- [claimed-docs] “Phaser maintains a unified input system that works across all browsers and devices.”
- [claimed-docs] “Common asset types include images, texture atlases, sprite sheets, fonts, audio files and JSON data, but there are many more that Phaser can…”
- [claimed-docs] “Animations are created via the Animation Manager.”
- [community] “It's a great tool if you go for a game that fits this framework - 2D, sprites, tilemaps, physics... After experimenting a little with phaser…”
- [community] “Phaser is the perfect framework to get started making HTML5 2D games.”
Performance
game developerProfile and scale — a real profiler, plus data-oriented paths (ECS, jobs, instancing) when scenes get heavy
weight 2 · round drawnthree.jsnone0/10No evidence of a built-in profiler, ECS, job system, or GPU/CPU instancing tooling in the pack — only renderer setup, TSL/WebGPU shading, loaders, and controls are documented. Three.js is a rendering library, not a full engine, so profiling and data-oriented scaling primitives fall to external tools (Chrome DevTools extension is mentioned but that's a generic browser profiler, not a real-time engine profiler), and no ECS/jobs/instancing capability is cited.
- [claimed-docs] “[devtools](https://chromewebstore.google.com/detail/threejs-devtools/jechbjkglifdaldbdbigibihfaclnkbo)”
Phasernone0/10The evidence pack shows no mention of a built-in profiler, ECS architecture, job system, or instancing support for scaling heavy scenes; Phaser's docs and community discussion focus on Scenes, Arcade physics, animations, and rendering (Canvas/WebGL) with only a passing complaint about relative rendering FPS. Nothing indicates data-oriented performance tooling exists.
- [claimed-docs] “Typical uses for a Scene would be a Loading Screen, a Main Menu, a Game Level, a Boss Fight, an in-game Item Shop, a High Score Table, etc.”
- [claimed-docs] “This will allow you to control the Sprite using the built-in physics functions, such as velocity, acceleration, gravity, etc.”
- [community] “The framework is good, however I got faster (fps wise) results using my own rendering functions on Canvas than I was getting using their ren…”
Physics
game developerBuilt-in physics — rigid bodies, collisions, raycasts — works out of the box
weight 2 · round to Phaserthree.jsnone0/10three.js is a rendering library — no evidence of any built-in physics engine (rigid bodies, collisions, raycasts as physics) shipped out of the box; evidence only covers rendering (WebGL/WebGPU), loaders, and controls. Raycaster exists in three.js for picking but no physics/collision system is documented, and physics is a well-known gap requiring third-party libraries like Cannon.js or Ammo.js.
Docs confirm a built-in Arcade Physics system providing velocity, acceleration, gravity, and collision handling out of the box, and community testimony (phaser-comm-13) lists physics as a core built-in feature, but the pack explicitly notes Arcade physics 'does have its limitations' (phaser-docs-24) and never mentions raycasting or full rigid-body dynamics (e.g., Matter.js integration) with concrete examples. Missing for 10: explicit raycast API evidence, rigid-body/Matter physics documentation, and independent confirmation of collision accuracy beyond Arcade's simplified AABB model.
- [claimed-docs] “This will allow you to control the Sprite using the built-in physics functions, such as velocity, acceleration, gravity, etc.”
- [claimed-docs] “It's very fast and easy to use, with lots of helper functions, but due to its nature it does have its limitations.”
- [community] “It's a great tool if you go for a game that fits this framework - 2D, sprites, tilemaps, physics... After experimenting a little with phaser…”
Rendering
game developerThe engine ships a modern production 3D renderer — PBR materials, global illumination or baked lighting, shadows, post-processing
weight 3 · round to three.jsEvidence confirms a modern rendering pipeline (WebGLRenderer/WebGPURenderer, antialiasing, and node-based 'MeshStandardNodeMaterial' implying PBR-style materials) but the pack contains no explicit documentation of shadow mapping, global illumination/baked lighting, or a post-processing pipeline — a community comment even asks uncertainly whether lightmaps are possible. missing for 10: explicit shadow-mapping docs, GI/lightmap baking evidence, post-processing/effects pipeline documentation, independent confirmation of PBR material fidelity.
- [claimed-docs] “When using TSL, use node-based materials: - MeshBasicNodeMaterial - MeshStandardNodeMaterial”
- [claimed-docs] “Use WebGPURenderer when you need: - Custom shaders/materials using TSL (Three.js Shading Language) - Compute shaders - Advanced node-based m…”
- [github] “const renderer = new THREE.WebGLRenderer( { antialias: true } ); renderer.setSize( width, height );”
- [community] “That is called aliasing. Three.js defaults to it, but you can turn antialiasing on by passing the option to the WebGLRenderer.”
- [community] “Can you actually generate lightmaps with three.js? I did a lot with it years ago. Really nice abstraction library.”
Editor tooling — the editor as a product — scene tools, extensibility, team workflowsEditor tooling
The editor as a product — scene tools, extensibility, team workflows
Collaboration
studio leadThe project format and tooling play well with version control and multi-person teams — mergeable scenes, diffable text formats, or built-in collaboration
weight 2 · round drawnthree.jsnone0/10three.js is a rendering library/API, not a scene-authoring tool with a project file format; evidence shows only a code-based API, an optional visual editor, and no mention of diffable scene formats, merge tooling, or multi-user collaboration features. This axis applies to engines/authoring tools generally, but nothing in the evidence indicates three.js ships mergeable/diffable project files or built-in collaboration.
- [claimed-docs] “three.js editor”
- [github] “This code creates a scene, a camera, and a geometric cube, and it adds the cube to the scene. It then creates a `WebGL` renderer for the sce…”
- [claimed-docs] “[docs](manual/#en/creating-a-scene) [examples](examples/#webgl_animation_keyframes)”
Phasernone0/10The evidence pack covers installation, scenes, physics, animation, and a visual Scene Editor, but nothing addresses version-control friendliness, mergeable/diffable scene file formats, or built-in multi-person collaboration tooling. While Phaser's code-first nature implies plain-text source files, there is no explicit documentation of scene file format diffability, conflict resolution, or team collaboration features for the visual editor.
Editor
technical artistA full visual editor — viewport, inspector, prefabs/scene composition — is the primary way to build levels
weight 3 · round to Phaserthree.js ships a browser-based editor (threejs.org/editor) and devtools/TransformControls, but evidence only names the editor's existence with no documentation of an inspector, prefab system, or scene-composition workflow, and the library's primary workflow is code-first (constructing scenes via API) rather than a visual editor. Missing for 10: documented inspector UI, prefab/asset composition workflow, evidence the editor is treated as the primary level-building tool rather than a supplementary demo tool.
- [claimed-docs] “three.js editor”
- [claimed-docs] “[OrbitControls](https://threejs.org/docs/#examples/en/controls/OrbitControls) - [TransformControls](https://threejs.org/docs/#examples/en/co…”
- [claimed-docs] “[devtools](https://chromewebstore.google.com/detail/threejs-devtools/jechbjkglifdaldbdbigibihfaclnkbo)”
Phaser Studio ships an official visual Scene Editor with drag-and-drop placement, a real-time Inspector for effects/physics/animations, and scene reorganization into layers (phaser-docs-12, phaser-docs-27, phaser-docs-29), which covers viewport/inspector/scene-composition claims. However, core Phaser itself remains a code-first framework, prefab workflows are never explicitly named, and all evidence is first-party marketing with zero independent/hands-on corroboration of the editor's actual level-building workflow. Missing for 10: explicit prefab/reusable-component system documentation, independent reviews or hands-on reports of the editor, and clarity on how central this paid add-on editor is versus code-based scene building.
- [claimed-docs] “Drag and drop objects into place, tweak their animations, adjust their physics bodies, enable special effects and more as you go.”
- [claimed-docs] “Add and configure filters visually — Glow, Shadow, Blur, Pixelate, Bokeh, ColorMatrix, Displacement and more — directly in the Scene Editor'…”
- [claimed-docs] “Pixel art, tilemap & atlas editors * SFX & music generation”
- [claimed-docs] “Create a particle emitter, reorganise a scene into layers, rename a bunch of objects — it handles it without switching tools.”
Extensibility
game developerExtend and automate the editor itself — custom tools, editor scripts, plugins that manipulate scenes and assets programmatically
weight 3 · round to Phaserthree.jsnone0/10Evidence confirms three.js ships an editor (threejs.org/editor) and a devtools browser extension, but nothing in the pack describes any plugin API, scripting console, or extension mechanism for programmatically automating the editor itself — the docs excerpts focus on the library API (TSL, renderers, loaders, controls), not editor extensibility.
- [claimed-docs] “three.js editor”
- [claimed-docs] “[devtools](https://chromewebstore.google.com/detail/threejs-devtools/jechbjkglifdaldbdbigibihfaclnkbo)”
Phaser's separate Editor product supports visual scene/asset manipulation (drag-and-drop, filters, inspector) and an MCP server exposes 40+ tools letting AI agents call editor-like functions to manipulate scenes/assets programmatically, which partially satisfies 'automate the editor.' However there is no evidence of a scripting/plugin API for the Editor itself (e.g., custom editor panels, extension SDK, editor-scripting language) — the MCP tools are agent-facing, not a documented developer plugin architecture. missing for 10: documented editor plugin/extension SDK, editor scripting API for custom tools, evidence of third-party editor plugins, independent hands-on confirmation of MCP tool automation reliability.
- [claimed-docs] “Drag and drop objects into place, tweak their animations, adjust their physics bodies, enable special effects and more as you go.”
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
- [claimed-docs] “Add and configure filters visually — Glow, Shadow, Blur, Pixelate, Bokeh, ColorMatrix, Displacement and more — directly in the Scene Editor'…”
- [claimed-docs] “Create a particle emitter, reorganise a scene into layers, rename a bunch of objects — it handles it without switching tools.”
- [probe] “official MCP server documented at https://phaser.io/agent/mcp”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
Headless automation — the engine without a human — CLI builds, CI test runs, dedicated serversHeadless automation
The engine without a human — CLI builds, CI test runs, dedicated servers
Ci
game developerBuild and export the project from the command line, headless, in CI — no human clicking an editor
weight 3 · round drawnthree.jsnone0/10Evidence shows three.js is a code-first WebGL/WebGPU library installed via npm/git and used with standard `WebGLRenderer` setup, but nothing documents a CLI or automated pipeline for building/exporting a 'project' headlessly in CI (no headless rendering support, no export tooling, no CI recipes) — the only editor mentioned (threejs.org/editor) is a browser GUI requiring human interaction. missing for 10: any documented headless rendering approach (e.g. headless-gl/Node canvas), a CLI build/export command, and CI pipeline examples.
- [github] “const renderer = new THREE.WebGLRenderer( { antialias: true } ); renderer.setSize( width, height );”
- [github] “git clone --depth=1 https://github.com/mrdoob/three.js.git”
- [claimed-docs] “three.js editor”
- [github] “This code creates a scene, a camera, and a geometric cube, and it adds the cube to the scene. It then creates a `WebGL` renderer for the sce…”
Phasernone0/10The evidence only shows an interactive CLI installer for scaffolding new projects (phaser-docs-2/21) and a separate paid Scene Editor with an MCP 'agent' for human-in-the-loop coding assistance (phaser-docs-12/13/14/27/29) — neither documents a headless build/export command or CI pipeline usage. There is no mention of a 'phaser build' CLI, bundler config, or automated export pipeline suitable for CI. Missing for 10: documented headless build/export CLI command, CI integration example, evidence that game export doesn't require the GUI editor.
- [claimed-docs] “This CLI tool presents an interactive selection of official project templates and demo games.”
- [claimed-docs] “This CLI tool presents an interactive selection of official project templates and demo games. Issue the command, answer some questions and t…”
- [claimed-docs] “Drag and drop objects into place, tweak their animations, adjust their physics bodies, enable special effects and more as you go.”
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
Server
game developerGame logic runs headless on servers — a dedicated-server or server-runtime build without rendering
weight 2 · round drawnthree.jsnone0/10three.js is fundamentally a browser-based WebGL/WebGPU rendering library requiring a canvas/GPU context; the evidence pack shows no headless/server-runtime build, no dedicated-server mode, and no mention of running game logic without rendering on Node.js servers. missing for 10: any headless rendering context (e.g. node-canvas/gl bindings), a documented server-runtime build, or dedicated-server examples.
Phasernone0/10No evidence anywhere in the pack of a headless/server-runtime build of Phaser that runs game logic without a canvas/WebGL renderer; all documentation focuses on browser/CDN/npm installs, Scenes, physics, and rendering-oriented editor tooling. Headless server support is a fair question for a game framework (many engines offer it), but nothing here confirms Phaser ships one.
Testing
game developerTests run headlessly — unit and integration tests of game code execute in CI against the real engine
weight 2 · round drawnthree.jsnone0/10No evidence in the pack addresses headless testing, CI integration, or running WebGLRenderer/WebGPURenderer without a browser context (e.g. via node-canvas, jsdom, or headless GL). All evidence covers rendering setup, docs, and community sentiment, none of it about automated/headless test execution.
Licensing openness — the terms you build on — licenses, royalties, source access, pricing stabilityLicensing openness
The terms you build on — licenses, royalties, source access, pricing stability
Governance
studio leadThe project's governance and funding are transparent — a foundation, published finances, or a public roadmap I can plan against
weight 1 · round drawnthree.jsnone0/10No evidence of a foundation, published finances, or public roadmap; three.js governance appears to be maintainer-driven (mrdoob) via GitHub releases/migration guides with no financial transparency artifacts in the pack.
Phasernone0/10No evidence pack items address governance structure, foundation status, published finances, or a public roadmap for Phaser; the evidence covers technical docs, editor/MCP features, pricing/licensing transfer, and community sentiment only. Missing for 10: any mention of a governing foundation, financial transparency/reports, or a published roadmap that a studio lead could plan against.
License
studio leadThe license is permissive with no royalties or per-install fees — I keep what my game earns
weight 3 · round to three.jsnpm registry confirms three.js is MIT licensed, a permissive license with no royalties or per-install fees, verified directly from the package registry. Missing for 10: no explicit first-party licensing FAQ or legal statement addressing commercial game royalties specifically, relying instead on the generic MIT registry classification.
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
Runtime probe confirms the core Phaser engine is published under the MIT license (npm registry metadata), which is inherently permissive and imposes no royalties or per-install fees, letting studios keep 100% of game revenue. The evidence pack does not include an explicit vendor statement like 'no royalties' or 'keep what you earn,' so this is inferred from the MIT designation rather than a direct claim; separately, the paid Editor/pricing page (phaser-docs-30) mentions 'full commercial rights' and license transfer for a different, optional commercial tool, not the core engine's licensing terms. Missing for 10: an explicit first-party statement on royalty-free/no-fee terms and independent legal/community confirmation of the license text.
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
- [claimed-docs] “Full commercial rights * Transfer your licence to any user”
Source
game developerRead and modify the full engine source when I hit a wall
weight 2 · round to three.jsthree.js is open-source (MIT license per npm registry) with full source hosted on GitHub, clonable and directly modifiable, and community evidence confirms active engagement with the codebase (e.g., @ts-ignore workarounds, discussion of internals like antialiasing defaults). Missing for 10: no explicit first-party statement encouraging source modification as a supported workflow, and no case study of a game dev forking/patching the engine for a shipped title.
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
- [github] “git clone --depth=1 https://github.com/mrdoob/three.js.git”
- [community] “there are some function signatures that don't match what's in the code using @types/three, and mrdoob does not want to maintain this. This g…”
- [community] “That is called aliasing. Three.js defaults to it, but you can turn antialiasing on by passing the option to the WebGLRenderer.”
Phaser's source is hosted on GitHub (phaser-gh-1, phaser-gh-2) and the runtime probe confirms it is MIT-licensed (phaser-probe-rt-1), meaning developers can freely read, fork, and modify the entire engine source when they hit a limitation. Community comments (e.g. phaser-comm-11, phaser-comm-12) even show developers digging into internals/rendering behavior, consistent with open-source access. Missing for 10: explicit documentation/tutorial on how to build from source or contribute patches, and no first-party statement framing this as a workaround path for hitting engine walls.
- [github] “You can use JavaScript or TypeScript for development.”
- [github] “Games can be built for the web, or as YouTube Playables, Discord Activities, Reddit games, Twitch Overlays or compiled to iOS, Android, Stea…”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
- [community] “The framework is good, however I got faster (fps wise) results using my own rendering functions on Canvas than I was getting using their ren…”
- [community] “I just started playing with it and circular dependencies make me cringe... It's really tough to compose things with it.”
Trust
studio leadThe pricing and license terms have a track record of stability — no retroactive changes that reprice games already shipped
weight 2 · round to three.jsthree.js is MIT-licensed, verified from the npm registry, which is a free, permissive open-source license with no pricing terms to retroactively change — this structurally supports licensing stability. However, there is no explicit evidence pack documentation of license history, versioning of terms, or any studio commentary confirming a track record of stability over time. Missing for 10: explicit license-history documentation, third-party confirmation of no relicensing/repricing events, and studio-lead testimonials on licensing trust.
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
Phasernone0/10Evidence shows current pricing/licence terms (full commercial rights, licence transfer) and confirms the core engine is MIT-licensed, but there is no evidence of a documented track record over time — no mention of past pricing changes, grandfathering policies, or community confirmation that shipped games were never repriced retroactively. Missing for 10: historical pricing-change log, explicit no-retroactive-repricing policy statement, and independent/community corroboration of licence stability over multiple releases.
- [claimed-docs] “You can transfer any active licence or subscription to another registered Phaser user from your account page.”
- [claimed-docs] “Full commercial rights * Transfer your licence to any user”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
Openness — open source, data portability, and self-hosting storiesOpenness
Open source, data portability, and self-hosting stories
ai-native userDo everything through the API that I can do in the UI
weight 2 · round to Phaserthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
Phaser is a code-first JS/TS game framework whose entire API is already scriptable (Scenes, physics, input, animations, loader), so most 'UI' interactions like the Scene Editor are optional visual layers over the same API. The official MCP server (phaser.io/agent/mcp) lets an AI agent describe intent in plain language and have it call editor-equivalent tools, supporting API-level parity with editor actions like adding filters, particle emitters, and reorganizing scenes. However, evidence doesn't confirm 100% coverage of every visual editor feature (e.g., visual filter/particle configuration, pixel art/tilemap/SFX generation tools) via the plain code API, and the MCP server itself is a separate hosted tool, not something distributed as an installable npm package with public OpenAPI/spec. missing for 10: explicit confirmation that every Scene Editor visual feature (filters, particle emitters, layers, pixel/tilemap/SFX tools) has a documented equivalent API call, independent hands-on evidence the MCP/API can fully replicate editor UI actions, and a public API spec (OpenAPI 404s) proving completeness.
- [claimed-docs] “Drag and drop objects into place, tweak their animations, adjust their physics bodies, enable special effects and more as you go.”
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
- [claimed-docs] “You describe what you want in plain language and your agent calls the tools for you.”
- [claimed-docs] “Give the player a double-jump and a coin counter.The jump feels floaty, make gravity stronger.”
- [claimed-docs] “Add and configure filters visually — Glow, Shadow, Blur, Pixelate, Bokeh, ColorMatrix, Displacement and more — directly in the Scene Editor'…”
- [claimed-docs] “Create a particle emitter, reorganise a scene into layers, rename a bunch of objects — it handles it without switching tools.”
- [claimed-docs] “Pixel art, tilemap & atlas editors * SFX & music generation”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.phaser.io/openapi.json, https://docs.phaser.io/swagger.json, https://docs.phaser.io/api…”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
ai-native userExport all of my data in open formats and leave
weight 3 · round drawnthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
ai-native userRead the product's source under an open license
weight 2 · round to three.jsthree.js source is hosted publicly on GitHub (mrdoob/three.js) and distributed via npm under the MIT license, verified directly from the npm registry; the repo is clonable and openly browsable. missing for 10: no explicit license file text quoted in the evidence pack, only registry-confirmed MIT license metadata.
- [github] “const renderer = new THREE.WebGLRenderer( { antialias: true } ); renderer.setSize( width, height );”
- [github] “git clone --depth=1 https://github.com/mrdoob/three.js.git”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
Phaser's source is hosted publicly on GitHub (github.com/phaserjs/phaser, cited in phaser-gh-1/2) and the npm package is confirmed MIT-licensed via runtime probe, satisfying the 'read source under open license' story directly. Missing for 10: an explicit first-party LICENSE file citation and independent community commentary specifically about license terms/openness.
- [github] “You can use JavaScript or TypeScript for development.”
- [github] “Games can be built for the web, or as YouTube Playables, Discord Activities, Reddit games, Twitch Overlays or compiled to iOS, Android, Stea…”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
ai-native userSelf-host the core product
weight 3 · round to three.jsthree.js is an open-source (MIT) client-side library distributed via npm/GitHub that can be cloned, built, and self-hosted entirely without any vendor service, as shown by the git clone instructions and npm registry data. missing for 10: no explicit first-party 'self-hosting guide' doc beyond generic clone/build instructions, and no independent case study of a fully self-hosted deployment.
- [github] “git clone --depth=1 https://github.com/mrdoob/three.js.git”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
- [github] “The current builds only include WebGL and WebGPU renderers but SVG and CSS3D renderers are also available as addons.”
Phaser is an MIT-licensed, open-source JavaScript library installable via npm or CDN and usable entirely within a self-managed environment (GitHub source, npm package, jsDelivr CDN) — there is no vendor-hosted runtime dependency for the core engine, so self-hosting is inherent to the product. missing for 10: explicit deployment/self-hosting guide (e.g., Docker, server config) and independent confirmation of running fully offline in production.
- [claimed-docs] “npm install phaser”
- [claimed-docs] “Phaser is on jsDelivr which is a "super-fast CDN for developers".”
- [github] “You can use JavaScript or TypeScript for development.”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
Platform export — shipping everywhere — desktop, mobile, console, browser payloadsPlatform export
Shipping everywhere — desktop, mobile, console, browser payloads
Targets
studio leadOne project exports to desktop, mobile, and (directly or via partners) consoles
weight 3 · round to Phaserthree.jsnone0/10The evidence pack shows three.js is a browser-based WebGL/WebGPU rendering library with no documentation of a build/export pipeline to native desktop, mobile, or console targets — no mention of Electron/Cordova wrapping, console SDK partnerships, or platform-specific packaging tools. While the axis is fair to ask of any 3D technology a studio might adopt, there is no evidence three.js provides or facilitates such multi-platform export beyond running inside a web browser.
- [github] “const renderer = new THREE.WebGLRenderer( { antialias: true } ); renderer.setSize( width, height );”
- [github] “The current builds only include WebGL and WebGPU renderers but SVG and CSS3D renderers are also available as addons.”
- [probe] “PROBE llms.txt: HTTP 200 at https://threejs.org/llms.txt # Three.js > Three.js is a cross-browser JavaScript library for creating 3D graphi…”
Phaser docs and GitHub state games can be "compiled to iOS, Android, Steam and native apps using 3rd party tools," covering mobile and desktop export paths, and a community report confirms a real Android .apk export at 60fps. However, there is no evidence—vendor or community—of console export capability (directly or via a documented console partner program), which is a core part of this story. Missing for 10: documented console export path or partner program, first-party tooling/guide for desktop/mobile builds beyond "3rd party tools", independent confirmation of Steam/iOS builds.
- [claimed-docs] “compiled to iOS, Android, Steam and native apps using 3rd party tools”
- [claimed-docs] “Games can be built for the web, or as YouTube Playables, Discord Activies, Twitch Overlays or compiled to iOS, Android, Steam and native app…”
- [github] “Games can be built for the web, or as YouTube Playables, Discord Activities, Reddit games, Twitch Overlays or compiled to iOS, Android, Stea…”
- [community] “This is the best JavaScript game framework. Been using it for a few years and it never let me down... created a small game and exported it t…”
Web
web developerMy game runs in the browser with a reasonable payload — WebGL today, and a credible WebGPU story
weight 2 · round to three.jsthree.js runs in-browser via WebGLRenderer (widely used, huge npm install base) and has a credible, actively developed WebGPU story through WebGPURenderer plus TSL shaders that target both WebGL and WebGPU backends, with SVG/CSS3D as lighter addons keeping core payload lean. Community confirms it's a solid abstraction over WebGL, though payload/performance specifics for WebGPU maturity aren't independently benchmarked in evidence. missing for 10: independent bundle-size/payload benchmarks, and hands-on confirmation of WebGPU production readiness beyond docs claims.
- [github] “const renderer = new THREE.WebGLRenderer( { antialias: true } ); renderer.setSize( width, height );”
- [github] “The current builds only include WebGL and WebGPU renderers but SVG and CSS3D renderers are also available as addons.”
- [claimed-docs] “**Use WebGPURenderer** when you need: - Custom shaders/materials using TSL (Three.js Shading Language) - Compute shaders - Advanced node-bas…”
- [claimed-docs] “TSL benefits: - Works with both WebGL and WebGPU backends - No string manipulation or onBeforeCompile hacks”
- [community] “Three.js is insane, in a good way. Great abstraction of WebGL, very user friendly, and surprisingly few things that it can't do, as long as …”
- [community] “THREE.js adds a nice layer of abstraction atop that metal [WebGL].”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
Evidence confirms browser-based rendering with WebGL (community mention of 'rendering on both Canvas and WebGL') and easy npm/CDN distribution suggesting reasonable payload, but there is no mention anywhere in the pack of WebGPU support, a WebGPU renderer, or a roadmap toward it. missing for 10: explicit WebGPU renderer/roadmap documentation, payload-size benchmarks, and independent corroboration of WebGL performance beyond one anecdotal comment.
- [community] “The framework is good, however I got faster (fps wise) results using my own rendering functions on Canvas than I was getting using their ren…”
- [claimed-docs] “npm install phaser”
- [claimed-docs] “Phaser is on jsDelivr which is a "super-fast CDN for developers".”
web developerThe engine installs from a package registry into my existing toolchain — a library I import, bundle, and tree-shake like any dependency
weight 2 · round drawnthree.js is published on npm (12M+ weekly downloads, MIT license per registry probe) and is widely used as an ES module import (importmap pattern shown in docs), consistent with standard bundler/tree-shaking workflows; community feedback confirms TypeScript compatibility and typical dependency usage patterns. Missing for 10: no explicit first-party documentation or evidence specifically confirming tree-shaking behavior/bundle-size optimization guidance.
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view three version` → 0.186.0, and the public npm downloads API reports 12,206,532 weekly download…”
- [claimed-docs] “CORRECT - modern pattern (always use latest version): html <script type="importmap">”
- [community] “Btw three.js works flawlessly with Typescript too in case anyone is interested.”
- [community] “there are some function signatures that don't match what's in the code using @types/three, and mrdoob does not want to maintain this. This g…”
- [community] “THREE.js adds a nice layer of abstraction atop that metal [WebGL].”
Phaser is published as a standard npm package (`npm install phaser`), confirmed both in docs and via live registry probe (v4.2.1, MIT license, 263k weekly downloads), and includes TypeScript definitions in the package, making it importable/bundleable like any standard JS dependency. Community evidence corroborates typical toolchain use (bundling into games/apps) though tree-shaking specifically isn't explicitly discussed. Missing for 10: explicit documentation or confirmation of tree-shaking/ESM module support behavior.
- [claimed-docs] “npm install phaser”
- [claimed-docs] “Full TypeScript definitions can be found inside the types folder”
- [claimed-docs] “Install via [npm](https://www.npmjs.com/package/phaser): npm install phaser”
- [probe] “PROBE runtime (recorded 2026-09-15): `npm view phaser version` → 4.2.1 (MIT, 263,018 weekly downloads), and phaser.io/llms.txt is live as a …”
- [github] “You can use JavaScript or TypeScript for development.”
Scripting — writing the game — languages, visual scripting, iteration speedScripting
Writing the game — languages, visual scripting, iteration speed
Iteration
game developerThe edit-run loop is fast — hot reload or near-instant preview after a script change
weight 2 · round drawnthree.jsnone0/10three.js is a rendering library, not a game engine or dev environment with a build/watch pipeline; no evidence in the pack of any hot-reload, live-reload, or fast edit-run tooling shipped by the project itself (only unrelated docs, editor mentions, and API references).
Phasernone0/10No evidence in the pack describes hot reload, live-reload dev server, or near-instant preview after script changes; only editor visual tweaks (glow/filters, drag-drop) are documented, which is not the same as a fast JS edit-run loop. The templates/CLI installation docs mention project setup but not dev-server hot reload behavior.
Language
game developerThe primary scripting language is productive and fully exposes the engine API, with a debugger behind it
weight 3 · round to three.jsThree.js is a plain JavaScript/TypeScript library, so the 'scripting language' is JS itself, giving full, direct access to the entire engine API with no separate scripting sandbox or restricted binding layer (threejs-gh-1, threejs-gh-4). Debugging is supported via standard browser devtools plus a dedicated official Chrome three.js DevTools extension (threejs-docs-8), and TypeScript works well though community reports note occasional @types/three signature mismatches requiring ts-ignore (threejs-comm-4, threejs-comm-5). Missing for 10: deeper first-party documentation of the debugger extension's capabilities and stronger independent corroboration of TypeScript API completeness.
- [github] “const renderer = new THREE.WebGLRenderer( { antialias: true } ); renderer.setSize( width, height );”
- [github] “This code creates a scene, a camera, and a geometric cube, and it adds the cube to the scene. It then creates a `WebGL` renderer for the sce…”
- [claimed-docs] “[devtools](https://chromewebstore.google.com/detail/threejs-devtools/jechbjkglifdaldbdbigibihfaclnkbo)”
- [community] “Btw three.js works flawlessly with Typescript too in case anyone is interested.”
- [community] “there are some function signatures that don't match what's in the code using @types/three, and mrdoob does not want to maintain this. This g…”
Phaser's primary language is JavaScript/TypeScript with full TypeScript definitions shipped (phaser-docs-4) and GitHub confirming both JS/TS support (phaser-gh-1), and community members report it as easy to learn and productive (phaser-comm-3, phaser-comm-7, phaser-comm-10). However TypeScript support is described as 'best-effort... layered onto Phaser 3 via DefinitelyTyped' rather than native (phaser-comm-8), and docs quality — key to fully exposing the API productively — is criticized as 'the worst I've seen' by one community member (phaser-comm-16) even as others praise it (phaser-comm-10). No dedicated debugger tooling (breakpoints, inspector) is documented anywhere in the evidence pack beyond standard browser JS debugging implied by using JS/TS. Missing for 10: explicit debugger/dev-tools integration documentation, native (non-DefinitelyTyped) TypeScript support, and independent confirmation that the API surface is fully exposed without workarounds.
- [github] “You can use JavaScript or TypeScript for development.”
- [claimed-docs] “Full TypeScript definitions can be found inside the types folder”
- [community] “A year or so ago I did a lot with Phaser... man is Phaser easy to learn and easy to get more advanced in... I am a big fan of their work.”
- [community] “I've made a couple toy projects with Phaser, after comparing other Javascript based 2d engines. Phaser is the most fully featured amongst th…”
- [community] “Phaser 4 was announced ~four years ago and was an attempt to get the project written natively in TypeScript. It looks pretty dead in the wat…”
- [community] “The documentation of Phaser is the worst i've seen to a popular framework. The website is very bad in the design, styling as well as content…”
- [community] “I've spent the past 6 months building a game using Phaser and TypeScript. On the whole, it's been a great experience... one of the worst par…”
Visual
technical artistBuild gameplay logic with visual scripting without writing code
weight 2 · round drawnthree.jsnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
Phasernone0/10Evidence shows Phaser's editor (phaser.io/editor) provides visual scene/asset editing—drag-and-drop placement, animation tweaking, physics-body adjustment, filter effects—and an MCP agent that translates natural-language requests into code changes, but nothing describes a node-based or visual gameplay-logic scripting system that lets a technical artist build game logic without writing JavaScript/TypeScript code. Phaser remains fundamentally a code-first framework (phaser-gh-1, phaser-docs-4), so the 'no-code logic' capability is unevidenced.
- [claimed-docs] “Drag and drop objects into place, tweak their animations, adjust their physics bodies, enable special effects and more as you go.”
- [claimed-docs] “Add and configure filters visually — Glow, Shadow, Blur, Pixelate, Bokeh, ColorMatrix, Displacement and more — directly in the Scene Editor'…”
- [claimed-docs] “Create a particle emitter, reorganise a scene into layers, rename a bunch of objects — it handles it without switching tools.”
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “You describe what you want in plain language and your agent calls the tools for you.”
- [github] “You can use JavaScript or TypeScript for development.”
Not comparable on these axes
ai-native userPlug MCP servers into this product so it can use their tools
weight 3 · not comparablethree.jsn/athree.js is a 3D graphics library, not an agent or platform that consumes external tools via MCP; the evidence explicitly confirms no MCP server exists and coding agents just use the library directly through npm. This axis is a category error for a rendering library.
- [probe] “PROBE runtime (recorded 2026-09-15): threejs.org publishes llms.txt at the site root pointing to a docs llms.txt that carries a literal '## …”
Phasern/aPhaser is a JS/TS game framework, not an AI agent or agent-hosting application; it has no client-side role for consuming external MCP servers. The evidence instead shows Phaser exposes its own MCP server (Game Agent) so other AI coding agents can call ITS tools — the opposite integration direction from this story, which is about the product itself plugging into and using external MCP servers' tools.
- [claimed-docs] “For power users, the MCP Server goes deeper. It implements over 40 specialised tools and integrates directly with Claude Desktop, Cursor, Gi…”
- [claimed-docs] “Build games from inside the editor you already use with the Phaser Game Agent MCP server.”
- [probe] “official MCP server documented at https://phaser.io/agent/mcp”
ai-native userIssue scoped/least-privilege API credentials for an agent
weight 2 · not comparablethree.jsn/athree.js is a client-side 3D rendering library with no API/service surface requiring credentials; scoped credential issuance is not a relevant axis for this kind of product.
Phasern/aPhaser is a JavaScript game framework/library, not a service issuing API credentials or an auth/identity platform; scoped credential issuance for agents is not a fair axis for this product type. Its MCP server (phaser.io/agent/mcp) is a tool-integration feature, not a credential/permissions system.
ai-native userSubscribe to events via webhooks
weight 2 · not comparablethree.jsn/athree.js is a client-side rendering library with no service/event backend; webhooks are a wrong-axis capability for this kind of product, not something buyers of a graphics library would expect.
game developerRun ML models inside the game — an official inference runtime for on-device model execution
weight 1 · not comparablethree.jsn/athree.js is a WebGL/WebGPU 3D rendering library, not an ML inference runtime; no evidence exists of an on-device model execution engine, and this axis is a category error for a rendering library rather than an applicable-but-unmet capability.
ai-native userSchedule recurring jobs or workflows
weight 2 · not comparablethree.jsn/athree.js is a 3D rendering library, not a workflow/automation platform; scheduling recurring jobs is outside its category and irrelevant to a graphics engine's API surface.
ai-native userChoose where my data is stored (region/residency)
weight 2 · not comparablethree.jsn/athree.js is a client-side rendering library with no data storage/hosting component, so data residency/region choice is not an applicable axis for this product category.
ai-native userPrevent my data from being used to train AI models
weight 3 · not comparablethree.jsn/athree.js is a client-side 3D rendering library, not a data-processing or AI service that trains models on user data; data-training opt-out is not an applicable axis for this product category.
ai-native userControl data retention and deletion
weight 2 · not comparablethree.jsn/athree.js is a client-side rendering library, not a data-processing service or platform that stores/retains user data; data retention/deletion controls are not an applicable axis for this kind of product.
ai-native userOpt out of telemetry and usage tracking
weight 2 · not comparablethree.jsn/athree.js is a client-side rendering library with no telemetry, network service, or usage-tracking component to opt out of; this privacy-posture axis applies to hosted services/SaaS tools, not a self-contained open-source graphics library.