ncsoft/Unreal.js
ncsoft/Unreal.js has 3,745 GitHub stars and 348 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-07 16:54 UTC. Last push 2023-07-20.
Unreal.js: Javascript runtime built for UnrealEngine
What you can do
- Powered by latest V8 (ES6)
- CommonJS modules
- Full access to the whole UnrealEngine API
- Free to subclass existing classes including blueprint
Measured star growth
- in 24h
- 0
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalUnreal.js
Unreal.js is a plug-in which brings V8-powered Javascript into UnrealEngine.
- Link to Demo project
- Link to the Unreal Engine Marketplace (4.11-4.27, 5.0-5.1)
- Update notes
- Link to NDC 2017 presentation (KR)
- Link to NDC 2017 presentation Video (KR)
- Support Platform : Win64, Mac, Linux, Android, iOS
Installation
- Search unreal.js on the epic marketplace
- Manual installation
git clone https://github.com/ncsoft/Unreal.js-core <YourProject>/Plugins/UnrealJScd <YourProject>/Plugins/UnrealJS && ./install-v8-libs
Features
Powered by latest V8 (ES6)
CommonJS modules
Full access to the whole UnrealEngine API
Free to subclass existing classes including blueprint
Live reload
Communicate with outer world: REST(http), process(pipe), arraybuffer, ...
Bridge API for editor extension
Auto-completion for Visual Studio Code (auto-generated *.d.ts)
Debugging within Visual Studio, Visual Studio Code, WebStorm and all IDE which supports V8 protocol
Profiling supported by V8
Dedicated Javascript console on UnrealEditor
(Full) access to existing javascript libraries via npm, bower, ...
Dummy demo
- Very simple demo available (https://github.com/ncsoft/Unreal.js/archive/snippet-editor.zip)
Tutorials & documentation
License
- Licensed under the BSD 3-Clause "New" or "Revised" License
- see LICENSE for details
Examples
2048
Springy
Editor extension
Create a new actor
let myActor = new Actor(GWorld,{X:10,Y:20,Z:30});
myActor.SetActorLocation({X:40,Y:80,Z:120});
Subclass an existing class
class MyActor extends Actor {
properties() {
this.MyProp/*EditAnywhere+Replicated+int*/;
}
RPC(x/*int*/) /*Server+Reliable*/ {
console.log('This function is replicated',this.MyProp++);
}
}
let MyActor_C = require('uclass')()(global,MyActor);
if (GWorld.IsServer()) {
new MyActor_C(GWorld);
}
Node.js like
let _ = require('lodash');
let kick = () => {
console.log("Hello timer!",_.keys(this));
setTimeout(kick,1000);
};
kick();
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
560,836 starspublic-apis/public-apis
A collective list of free APIs
497,076 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
441,480 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,157 stars

