A JavaScript ecosystem for making games

Write in JS, deploy everywhere via Unity.

QuickstartDiscordAsset Store

DropBall.tsxfrom the Quickstart
import { render, Button } from "onejs-react"
import {
    GameObject, PrimitiveType, Random, Rigidbody, Vector3
} from "UnityEngine"

function dropBall() {
    const ball = GameObject.CreatePrimitive(PrimitiveType.Sphere)
    ball.transform.position = new Vector3(Random.Range(-2, 2), 6, 0)
    ball.AddComponent(Rigidbody)
}

render(<Button text="Drop Ball" onClick={dropBall} />, __root)

TutorialsDocs

What we maintainGitHub

OJPlay alphaAll games

  • Fortnite HUD on OJPlayFortnite HUDA Fortnite style HUD: shield and health bars, an inventory bar, and a panning minimap.
  • Overwatch HUD on OJPlayOverwatch HUDAn Overwatch style HUD: a segmented health bar, an ultimate meter that crackles when full, and abilities on cooldown.

On JuiceboxMore

  1. Europe is about to get very tough on loot boxes in games, according to a leaked draft of the landmark Digital Fairness Act eurogamer.net
  2. Blender 5.3 released with Gaussian Splat support blender.org
  3. Big Walk Used AI In 'The Final Stretch' Of Development, Kicking Off Intense Awards Debate aftermath.site
  4. Rockstar Says GTA VI Is ‘Targeting’ 30 FPS And Will Use PSSR On PS5 Pro kotaku.com
  5. How Do You Modernize a 15-Year-Old Live Game Without Rewriting It? SuperCity’s Journey From Flash to HTML5 gameworldobserver.com