Murasaki

Introduction

Next.js DX for desktop apps — React 19 + Vite, Rust-native, without writing Rust.

Murasaki lets you build native desktop apps the way you build a Next.js app: file-based routing, layouts, server actions, API routes, and React 19 — running in a Rust-native window, not Electron's bundled Chromium.

You write React and TypeScript. Murasaki ships a small Rust core (@murasakijs/native, built on tao/wry/muda) that gives you a real native window, native menus, and OS integration — without you writing any Rust.

Why Murasaki

MurasakiElectronTauri
UI runtimeOS WebView (wry)bundled ChromiumOS WebView
LanguageTypeScript / ReactTypeScript / ReactTypeScript + Rust
DXNext.js-style (Vite HMR)manual wiringmanual wiring
Memory (idle)~1/5 of Electron*baselinesmall
Installer size~43 MB .dmg / ~120 MB .app~80–150 MB*~3–10 MB*
Server actionsdefineAction / useActionmanual IPCmanual IPC / commands

* Commonly-cited ballpark for Electron/Tauri — not a measured benchmark. † Measured on macOS — the .app bundles a full Node runtime, which is where most of its size comes from.

Choose Murasaki if you know React/Next.js and want a small-footprint desktop app without learning Rust or hand-wiring IPC.

What you get

  • File-based routingsrc/app/**/page.tsx, layouts, dynamic segments, loading / error / not-found, middleware.ts. See Routing.
  • Server Actions'use server' + defineAction / useAction, the React 19 shape you already know. See Server Actions.
  • Node Main — a long-lived Node lifecycle plus typed 'use main' calls for databases, sockets, workers, and background work. See Node Main.
  • API Routes — Next.js-style src/api/**/route.ts HTTP endpoints. See API Routes.
  • Native window & menus — a real native window, a native menu bar, and scoped native context menus (NSMenu, not HTML popups). See Native APIs.
  • UI kit@murasakijs/ui, a shadcn-style component library. See Styling and the live Components.
  • Real distribution — portable, cross-arch native installers for macOS and Windows, optional code signing + notarization. See Distribution.

Bundling ships installers for macOS (.app / .dmg) and Windows (.zip / .exe / .msi) today; Linux (.AppImage) is on the roadmap. The Rust core already builds for all five targets.

Murasaki is pre-1.0. Review the platform and feature status for production blockers such as global shortcuts, Linux packaging, and Linux package signing.

Next steps

Improve this page on GitHub

On this page