クイックスタート
Murasaki アプリを作成し、HMR 付きで開発して、配布用パッケージを生成します。
前提条件
- Node.js 22.12 以上(サポートが終了した Node.js 20 は対象外です)
murasaki devは macOS、Windows、Linux で動作します。macOS の.app/.dmgは macOS 上でビルドする必要があります。ポータブルな Windows フォルダー /.zipはどのホストからでもクロスビルドできます。Linux の x64 / arm64 向けには AppDir、.AppImage、.debを生成できます。AppImage の作成にはmksquashfsが必要です。
スキャフォールド
pnpm create murasaki@latest my-app
cd my-appReact 19、Vite、Tailwind を使ったアプリのひな形が作成されます。Next.js に近いディレクトリ構成、ネイティブウィンドウ、コンテキストメニューが最初から含まれます。アプリシェルは Murasaki が管理するため、index.html やエントリーファイルを用意する必要はありません。
開発
pnpm devVite の開発サーバーとネイティブウィンドウが起動します。React Fast Refresh と HMR は通常どおり利用できます。src/app/page.tsx を編集すると、開いているウィンドウへすぐに反映されます。
アプリ内を右クリックすると OS のネイティブメニューが表示されます。カード上では、その要素に限定したメニューへ切り替わります。どちらも HTML で再現したポップアップではなく、各 OS のネイティブメニューです。
配布物をビルドする
pnpm bundle
pnpm installer配布物には Node.js ランタイムとネイティブランチャーが含まれるため、ビルドに使ったマシン以外でも実行できます。macOS では .app と .dmg を生成します。ターゲットを明示すると、Windows や Linux 向けの配布物も作成できます。
pnpm bundle --arch x64 # ターゲットアーキテクチャを指定
pnpm bundle --target win32-x64 # ポータブルな Windows フォルダー + .zip
pnpm bundle --target linux-x64 # AppDir + AppImage
pnpm installer --target linux-x64 # Debian パッケージ(.deb)pnpm installer --target win32-x64 は、makensis がインストールされていれば NSIS の .exe を生成します。組み込みのアップデーターを無効にし、Windows 上に WiX v4 があれば、MSI の .msi も生成します。アップデーターを有効にしたビルドでは、意図的にユーザー単位の NSIS のみを使用します。インストーラーを1つも生成できない場合、コマンドは失敗します。ポータブルな .zip が目的の場合は pnpm bundle --target win32-x64 を使用してください。ツールのセットアップとすべてのターゲットについては配布を参照してください。
macOS では、未署名のアプリを別のマシンで開くと Gatekeeper の警告が表示されます。開発者以外へ配布する場合は、Developer ID で署名し、Apple の公証を受けてください。手順は署名と公証で説明しています。