Electron IPC Bridge- Auto-generated type-safety without the boilerplate
NestJS-style decorators for Electron IPC, but Tauri and native bindings already solved this.

Typed IPC with Protobuf beats Electron's string channels, but Tauri already won the size war.
Desktop app developers using TypeScript
Electron · Tauri · NW.js
For the last ~15 years I've worked on embedding web browsers into Java and .NET desktop apps (JxBrowser, DotNetBrowser). Over time, I watched many teams move from embedding web views into native apps, to building full desktop apps with frameworks like Electron and Tauri.
Both are useful, but in practice I kept running into several problems.
With Electron, beyond the larger app footprint, I often ran into:
- lack of type-safe IPC - no source code protection - weak support for the modern web stack
Tauri solves some problems (like app size), but introduces others:- different WebViews across platforms → inconsistent behavior - requires Rust + JS instead of a single stack
So we built MōBrowser, a framework for building desktop apps with TypeScript, Node.js, and Chromium.Some of the things we focused on:
- typed IPC using Protobuf + code generation (RPC-style communication instead of string channels) - consistent rendering and behavior across different platforms - Node.js runtime - built-in packaging, updates, and scaffolding - source code protection - small delta auto-updates
The goal is to let web developers ship desktop apps with a web stack they already know and fewer cross-platform surprises.I'd especially love feedback from people who have built production apps with Electron or Tauri.
Happy to answer any questions.
NestJS-style decorators for Electron IPC, but Tauri and native bindings already solved this.
Electron alternative: Java backend + web frontend, 50-80MB bundles, system WebViews instead of Chromium.
Protobuf alternative with better DX, but gRPC + OpenAPI already solve this space.
abitype for WebAssembly—pure types from WIT strings, but adoption depends on Component Model maturity.
Yet another JSON validator, but uses TypeScript types instead of JSON Schema.
Type-safe Postgres queries with zero verbosity, but competes with Prisma, Drizzle, sqlc.