Awesome
<picture> <source media="(min-width: 720px)" srcset="docs/header.svg"> <img src="docs/header-mobile.svg" width="900" height="330" alt="GodotJS Logo"> </picture>GodotJS
-- 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.
Getting started
Read the getting-started.
Features
- 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
Getting the engine
No installation or setup necessary. The binaries for download are the complete, usable Godot editor and engine with JavaScript/TypeScript language support.
Binary downloads
Download the binaries from the release page.
Compiling from source
- 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
Documentation, Tutorials & Demos
Read this documentation or look at the tutorials or demos:
- ECMAScriptDemos - Demos
- godot-ECMAScript-cookbook - Tutorial
- godot-typescript-starter - Template
- godot-js-template - Template
Contributing
If you like to contribute to this project check the CONTRIBUTING.md file.