Embed Godot Games in React Native with Full TypeScript API Access
Intro
If you've ever tried to ship a game inside a React Native app, you know it's a pain. Web views are clunky, native modules are a nightmare to maintain, and Godot's export pipeline wasn't built for embedding inside another app.
But now there's a way to drop a Godot game directly into a React Native view — and control it completely from TypeScript. No bridge hell, no custom plugin write-up. Just your game, your React Native UI, and full API access from the JS side.
What It Does
react-native-godot is a React Native package that lets you embed a Godot game as a native view inside your app. It wraps Godot's engine in a way that exposes its APIs to TypeScript, so you can call game functions, respond to events, and manage the game lifecycle from your React code.
The repo provides:
- A native module for iOS and Android
- A React component (
GodotView) that renders the game - TypeScript bindings for the Godot API
- Example code showing how to load scenes, send data, and handle callbacks
Why It's Cool
First, it's genuinely plug‑and‑play. You build your Godot game normally, export it for Android/iOS, point react-native-godot at the .pck file (or the exported binary), and it just renders inside your React Native view. No manual wiring, no custom native bridges.
Second, the full API access from TypeScript is the real standout. You can:
- Start/stop/pause the game from React
- Send user data (e.g., player names, scores) directly into Godot
- Listen for Godot events (e.g., game over, level complete) and update your React UI
- Control camera, physics, or anything else that Godot exposes
That means your React Native UI can be the shell — login screens, leaderboards, settings — while Godot handles the heavy lifting of rendering and game logic. It's a clean separation that doesn't sacrifice control.
For game‑heavy apps (education, AR/VR tools, mini‑games in a social platform), this solves a real problem. You don't have to rebuild your game logic in React Native or rely on brittle WebGL hacks.
How to Try It
-
Clone the repo:
git clone https://github.com/borndotcom/react-native-godot -
Install dependencies:
cd react-native-godot && npm install -
Follow the
example/directory for a working setup. You'll need to:- Export your Godot project for iOS/Android (make sure you target the correct platform)
- Place the exported
.pckor binary in your React Native app's native assets - Import
GodotViewand use it like any other component
The repo's README has platform‑specific steps for iOS (CocoaPods) and Android (Gradle). It's refreshingly straightforward.
Final Thoughts
react-native-godot is one of those tools that fills a niche so cleanly you wonder why it didn't exist before. It's not for every app — if you just need a 2D canvas, React Native's built‑in stuff is fine. But if you want a real game engine backed by React Native's ecosystem, this is the smoothest path I've seen.
Game devs who already know Godot and React Native will feel right at home. And for teams shipping hybrid apps with game components, it removes a ton of friction. Worth a weekend experiment.
🔗 Follow us at @githubprojects for more developer tools and open source finds.