https://github.com/godotjs/godotjs
GodotJS - Add TypeScript/JavaScript Support for Godot 4.x with v8
https://github.com/godotjs/godotjs
godot godotjs godotts javascript quickjs scripting typescript v8
Last synced: 2 months ago
JSON representation
GodotJS - Add TypeScript/JavaScript Support for Godot 4.x with v8
- Host: GitHub
- URL: https://github.com/godotjs/godotjs
- Owner: godotjs
- License: mit
- Created: 2024-04-20T09:09:28.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-24T11:23:09.000Z (over 1 year ago)
- Last Synced: 2024-10-24T15:57:45.178Z (over 1 year ago)
- Topics: godot, godotjs, godotts, javascript, quickjs, scripting, typescript, v8
- Language: C
- Homepage:
- Size: 34.6 MB
- Stars: 182
- Watchers: 5
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README

# **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.
## Documentation
For full documentation, visit [godotjs.github.io](https://godotjs.github.io/documentation/getting-started/).
---
See [Breaking Changes](https://godotjs.github.io/misc/breaking-changes/) if upgrading from old versions.
> [!NOTE]
> The core functionality is implemented and essentially usable but still under testing.

## Features
- [x] Godot ScriptLanguage integration
- [x] Debug with Chrome/VSCode (with v8) and Safari (with JavaScriptCore)
- [x] REPL in Editor
- [x] Hot-reloading
- [x] Support for multiple javascript engines ([v8](https://github.com/v8/v8), [quickjs](https://github.com/bellard/quickjs), [quickjs-ng](https://github.com/quickjs-ng/quickjs), [JavaScriptCore](https://developer.apple.com/documentation/javascriptcore), the host Browser JS)
- [x] [Worker threads](https://godotjs.github.io/documentation/experimental/worker/) (limited support) (**experimental**)
- [x] 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](https://github.com/ialex32x/GodotJSExample.git) for examples written in typescript.
**And, don't forget to run `npm install` and `npx tsc` before opening the example project.**
[](https://github.com/ialex32x/GodotJSExample.git)
[](https://github.com/ialex32x/GodotJSExample.git)