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. Gang of Dragon developer Nagoshi Studio shutters months after NetEase cut funding gamesindustry.biz
  2. PlayStudios closes Tetris Block Party after cutting 177 jobs and shuttering four studios mobilegamer.biz
  3. BioWare co-founder: game execs "have never made a game" and don't get it pcgamer.com
  4. Vibe-Coding a Game in 2026: What AI Builds, What Breaks vlstudio.app
  5. Games made with Unity: October 2026 in review unity.com