Skip to content

GodotJS

-- TypeScript/JavaScript Support for Godot 4.x by leveraging the high-performance capabilities of V8 to bring the delightful development experience of TypeScript into Godot. --

typescript_intellisence

NOTE: The core functionality is implemented and essentially usable but still under testing.

Getting started

Read the getting-started.

Features

  • Godot ScriptLanguage integration
  • Debug with Chrome/VSCode (with v8) and Safari (with JavaScriptCore)
  • REPL in Editor
  • Hot-reloading
  • Support for multiple javascript engines (v8, quickjs, quickjs-ng, JavaScriptCore, the host Browser JS)
  • Worker threads (limited support) (experimental)
  • Asynchronously loaded modules (limited support) (temporarily only available in v8.impl, quickjs.impl)

Examples

For more information on how to use GodotJS in a project, check out GodotJSExample for examples written in typescript.

Example: Snake Example: Jummpy Bird

Supported Platforms

v8 quickjs quickjs-ng Web Builtin JS JavaScriptCore
Windows:x86_64
Windows:arm64
MacOS:x86_64 ✅ (not tested) ✅ (not tested) ✅ (not tested) ✅ (not tested)
MacOS:arm64 ✅ (debugging)
Linux:x86_64 ✅ (not tested) ✅ (not tested)
Linux:arm64
Android:x86_64 ✅ (not tested) ✅ (not tested) ✅ (not tested)
Android:arm64 ✅ (not tested) ✅ (not tested)
iOS:x86_64 ✅ (not tested) ✅ (not tested) ✅ (not tested) ✅ (not tested)
iOS:arm64 ✅ (not tested) ✅ (not tested) ✅ (not tested) ✅ (not tested)
Web:wasm32 ✅ (not tested) ✅ (not tested) ✅ (debugging)
Debugger ✅ Chrome/VSCode ✅ browser devtools ✅ Safari

Android: only tested on ndk_platform=android-24
Web: only tested on emsdk-3.1.64
JavaScriptCore: macOS 15, iOS 18 (support for lower versions may be implemented in future versions)