← Back
LiveWeb · React · Node · Postgres · Multiplayer

NativeBridge

A multiplayer IDE that converts iOS apps to Android. Tri-directional Swift ↔ Kotlin ↔ TypeScript.

A multiplayer IDE in the browser that converts iOS Swift to Android Kotlin to TypeScript and back. Real-time collaboration, live cursors, lock system. Built on Monaco — the actual VS Code editor. The leverage move: solve the meta-problem so you can solve every instance of the problem.

Origin

Most engineers writing cross-platform code rely on Flutter, React Native, or Kotlin Multiplatform — frameworks that constrain what you can build. NativeBridge goes the other direction: write fully native Swift, then convert to fully native Kotlin or TypeScript. No framework lock-in. Output runs on platform-idiomatic tools (Jetpack Compose on Android, real Swift on iOS).

What it does

  • Tri-directional conversion

    Swift ↔ Kotlin ↔ TypeScript. The tool tracks all three languages simultaneously in collaborative workspaces.

  • Real-time multiplayer

    Two engineers can edit the same Swift→Kotlin conversion in real time, see each other's cursors, and lock sections to prevent conflicts. WebSocket transport over a /collaboration namespace, with reconnection and exponential backoff.

  • Monaco editor

    The actual VS Code editor embedded in the page. Same syntax highlighting, same IntelliSense surface, same keybindings users expect.

  • Automatic library detection

    Detects iOS libraries in your code and maps them to Android equivalents — Alamofire → Retrofit, Realm → Room, RxSwift → Flow, Kingfisher → Coil, KeychainAccess → EncryptedSharedPreferences, Firebase iOS SDK → Firebase Android SDK.

  • Auto-generated build.gradle

    Injects all required dependencies in a recommended-version catalog. Designed for high first-Gradle-sync compilation rate.

  • Multi-tenant workspaces + billing

    Auth, profile, dashboard, usage tracking, Stripe billing, GitHub Marketplace integration. A real productized SaaS surface, not a hobby.

Engineering

  • The collaboration layer

    Real-time multi-user editing via socket.io over WebSocket on the /collaboration namespace. Live cursors with name + email + title + color identity per collaborator. Lock system (activeLocks + lockEvents) prevents simultaneous edits. Tri-language code state tracked simultaneously: { swift, kotlin, typescript }. Reconnection with backoff (1s → 5s, 5 attempts), then degrade to polling. Identity refs decoupled from connection — name/email changes don't trigger reconnects.

  • Backend depth: 27 routes, multi-tenant, billing

    27 backend route files: auth + admin + profile + userDashboard + usage; Stripe billing; GitHub OAuth + GitHub Marketplace listing; convert + batch-convert + conversions; documents + snapshots + divergence (versioning); workspaces + workspace-collaboration + workspace-documents (multi-tenant); chat; production monitoring; sitemap; news; contact. Plus 36 DB migrations, multi-tenant orgs in db-organizations.js, Docker-ready, Railway-ready, cron jobs.

  • Used in production to ship GoKC

    The proof: convert-gokc.js, postprocess-gokc.js, sync-strings.js exist at the parent folder above the iOS and Android source. NativeBridge isn't a slide deck — it has a flagship customer that ships on both App Store and Play Store, with 8 languages and 750+ places, maintained by one engineer.

Stack

  • React 19
  • Vite
  • Monaco Editor
  • socket.io
  • TanStack Query
  • Tailwind v4
  • Express
  • Postgres
  • Stripe
  • Railway
  • Netlify