opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

Embed Godot games into React Native apps with full API access from TypeScript
GitHub RepoImpressions3

Project Description

View on GitHub

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

  1. Clone the repo:
    git clone https://github.com/borndotcom/react-native-godot

  2. Install dependencies:
    cd react-native-godot && npm install

  3. 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 .pck or binary in your React Native app's native assets
    • Import GodotView and 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.

Back to Projects
Project ID: d4ad7ee5-71b7-4081-ba6f-920099093c1fLast updated: July 14, 2026 at 05:50 AM