2026.07.24 13:21
Next.jsっぽくネイティブアプリをつくる「Murasaki」
Murasakiという、デスクトップアプリ向けのOSSフレームワークを開発しています。
React 19とViteをベースに、Next.jsのような開発体験でネイティブアプリをつくれるフレームワークです。
Murasakiとは
Murasakiでは、普段のWeb開発に近い感覚でデスクトップアプリを開発できます。
ファイルベースルーティング、Server Actions、API Routes、Viteによる高速な更新などを備えています。画面にはOS標準のWebViewを使うため、Chromiumをアプリに同梱する必要がありません。
ネイティブ部分はRustで実装していますが、アプリをつくるときにRustを書く必要はなく、TypeScriptとReactを中心に開発できます。
なぜつくったのか
Webの技術を使ってデスクトップアプリを開発する方法としては、ElectronやTauriなどがあります。
一方で、Chromiumを同梱せず、RustやIPCの仕組みを強く意識することもなく、Reactから気軽にネイティブアプリをつくれる選択肢があってもよいのではないかと思いました。
そこで、Next.jsに慣れている人が迷いにくい構成と、軽量なネイティブランタイムを組み合わせてMurasakiをつくりました。
実装している機能
現在は、次のような機能を実装しています。
- ファイルベースルーティング
- Server Actions
- API Routes
- ネイティブウィンドウとメニュー
- macOS・Windows・Linux向けのパッケージ生成
- コード署名と自動アップデート
- デスクトップアプリ向けUIキット
サンプルアプリも用意し、実際のアプリ開発で必要になる機能を確認しながら改善しています。
名前について
Murasakiという名前は、国蝶として知られるオオムラサキから付けました。
紫色の羽を持つ蝶のように、軽く、印象に残るフレームワークにしたいという思いを込めています。
これから
まだ改善したい部分はありますが、基本的なアプリ開発からインストーラーの生成まで、一通り試せる状態になっています。
Reactでデスクトップアプリをつくってみたい方は、ぜひ触ってみてください。
Murasakiのサイト
https://murasaki.ichi10.com/