-- JavaScript and TypeScript language binding for Godot game engine --
This module implements JavaScript/TypeScript language support for the Godot game engine using QuickJS as the JavaScript engine.
Read the getting-started.
- Almost complete ES2020 support
- All Godot API available
- Operator overriding for built-in types (Vector3, Color, etc)
- TypeScript support
- Using third-party libraries from npm
- Multi-thread support with Worker API
- Full code completion support for all Godot APIs including signals and enumerations
- Debug in Visual Studio Code with the plugin - currently not available for 4.x
No installation or setup necessary. The binaries for download are the complete, usable Godot editor and engine with JavaScript/TypeScript language support.
Download the binaries from the release page.
- Clone the source code of godot:
git clone git@github.com:godotengine/godot.git
orgit clone https://github.com/godotengine/godot.git
- This branch uses version
4.1
so checkout the version with:git checkout 4.1
- Clone this module and put it into
godot/modules/javascript
:git clone git@github.com:godotjs/javascript.git godot/modules/javascript
orgit clone https://github.com/godotjs/javascript.git godot/modules/javascript
- Recompile the godot engine
- Use
scons
with those additional optionswarnings=extra werror=yes module_text_server_fb_enabled=yes
to show all potential errors:- Windows:
scons platform=windows warnings=extra werror=yes module_text_server_fb_enabled=yes
- MacOS:
scons platform=macos arch=arm64 warnings=extra werror=yes module_text_server_fb_enabled=yes
- Windows:
- Hint: To enable unit tests you need to add
tests=true
toscons
arguments
- Use
Read this documentation or look at the tutorials or demos:
- ECMAScriptDemos - Demos
- godot-ECMAScript-cookbook - Tutorial
- godot-typescript-starter - Template
- godot-js-template - Template
If you like to contribute to this project check the CONTRIBUTING.md file.