Platform & Feature Status
The canonical, evidence-backed status of Murasaki features on macOS, Windows, and Linux.
Murasaki is pre-1.0 software. Some parts are ready to use, some have meaningful
platform gaps, and others are designs rather than shipping APIs. This page is
generated from packages/murasaki/capabilities.json,
the repository's canonical capability manifest.
Planned does not mean available. A dependency, Rust module, type, or roadmap entry is not marked as shipping until Murasaki exposes a supported path and records its limitations here.
Status definitions
- Stable — shipping public surface with a compatibility commitment for the current release line.
- Experimental — shipping and tested, but its API or wire contract may change before 1.0.
- Partial — usable today, with a material API or platform gap described in the table.
- Planned — no supported implementation is available.
Platform labels are separate from feature maturity. Dev only means the development runtime exists on that platform but there is no production packaging claim. Unavailable means that feature does not apply or has no implementation there.
Murasaki 0.52.0 · manifest schema 1
| Feature | Status | macOS | Windows | Linux | Current limits |
|---|---|---|---|---|---|
| File routingWeb framework | Partial | Supported | Supported | Dev only |
API and evidenceAPI: AppRouter, Link, useRouter, usePathname, useParamsEvidence:No automated evidence (not implemented) |
| Server ActionsWeb framework | Experimental | Supported | Supported | Dev only |
API and evidenceAPI: defineAction, callAction, useAction, ActionStateEvidence: packages/murasaki/test/server-actions-wire.test.mjs, packages/murasaki/test/wire.test.mjs |
| API RoutesWeb framework | Experimental | Supported | Supported | Dev only |
API and evidenceAPI: RouteHandlerEvidence: packages/murasaki/test/api-routes.test.mjs, packages/murasaki/test/prod-server-http.test.mjs |
| Navigation middlewareWeb framework | Partial | Supported | Supported | Dev only |
API and evidenceAPI: Middleware, MiddlewareContext, MiddlewareResultEvidence:No automated evidence (not implemented) |
| Route metadataWeb framework | Partial | Supported | Supported | Dev only |
API and evidenceAPI: Metadata, GenerateMetadata, applyMetadataEvidence:No automated evidence (not implemented) |
| Node main lifecycleApplication model | Experimental | Supported | Supported | Dev only |
API and evidenceAPI: murasaki/main, defineMain, emitMainEvent, murasaki/main-client.subscribeMainEvent, MainContext, MainDefinitionEvidence: packages/murasaki/test/main-runtime.test.mjs, packages/murasaki/test/main-events.test.mjs, packages/murasaki/test/prod-server-http.test.mjs |
| Native windowNative integration | Partial | Supported | Supported | Dev only |
API and evidenceAPI: App, WindowConfig, SecondaryWindowConfig, murasaki/native.appWindow, murasaki/native.windowsEvidence: packages/murasaki/test/native-api.test.mjs, packages/murasaki/test/windows.test.mjs, crates/native/src/window.rs |
| Application menuNative integration | Partial | Supported | Supported | Unavailable |
API and evidenceAPI: useAppMenu, AppMenu, AppMenuItemSpecEvidence: crates/native/src/webview.rs, crates/native/src/menu.rs |
| Context menuNative integration | Partial | Supported | Supported | Unavailable |
API and evidenceAPI: useContextMenu, ContextMenuTrigger, Action, createActionsEvidence: crates/native/src/webview.rs, crates/native/src/menu.rs |
| Native utilitiesNative integration | Partial | Partial | Partial | Partial |
API and evidenceAPI: murasaki/native.dialog, murasaki/native.clipboard, murasaki/native.notification, murasaki/native.shell, murasaki/native.appWindow, murasaki/native.app, murasaki/native.windowsEvidence: packages/murasaki/test/native-api.test.mjs, .github/workflows/native-release.yml |
| Auto-updateDistribution | Partial | Supported | Partial | Unavailable |
API and evidenceAPI: useUpdate, UpdateButton, UpdaterConfig, UpdateStateEvidence: packages/murasaki/test/updater-hardening.test.mjs, .github/workflows/app-package-win.yml |
| Application packagingDistribution | Partial | Supported | Supported | Planned |
API and evidenceAPI: murasaki bundle, murasaki installerEvidence: .github/workflows/app-package-win.yml |
| Code signingDistribution | Partial | Supported | Supported | Planned |
API and evidenceAPI: MurasakiConfig.sign, WindowsSigningConfig, murasaki bundle --sign, murasaki installer --sign, murasaki installer --notarizeEvidence: packages/murasaki/test/windows-signing.test.mjs |
| Loopback endpoint protectionSecurity | Partial | Supported | Supported | Dev only |
API and evidenceAPI: No supported public API Evidence:No automated evidence (not implemented) |
| content-security-policySecurity | Partial | Supported | Supported | Dev only |
API and evidenceAPI: MurasakiConfig.security, security.cspEvidence: packages/murasaki/test/csp.test.mjs, packages/murasaki/src/vite-plugin/shell.ts |
| Multi-windowApplication model | Experimental | Supported | Supported | Unavailable |
API and evidenceAPI: MurasakiConfig.windows, SecondaryWindowConfig, WindowInfo, murasaki/native.appWindow.getLabel, murasaki/native.windowsEvidence: packages/murasaki/test/windows.test.mjs, packages/murasaki/test/native-api.test.mjs, crates/native/src/window.rs, crates/native/src/launcher.rs, .github/workflows/ci.yml |
| Tray and global shortcutsNative integration | Partial | Supported | Supported | Planned |
API and evidenceAPI: murasaki/native.tray, TrayOptions, TrayMenuItem, TrayClickEventEvidence: packages/murasaki/test/native-api.test.mjs, crates/native/src/webview.rs |
| system-permissionsNative integration | Partial | Supported | Partial | Unavailable |
API and evidenceAPI: MurasakiConfig.systemPermissions, SystemPermissionsConfig, murasaki/native.systemPermissionEvidence: packages/murasaki/test/system-permissions.test.mjs, crates/native/src/system_permission.rs |
| Single instance and deep linksApplication model | Partial | Supported | Supported | Planned |
API and evidenceAPI: ProtocolConfig, FileAssociationConfig, OpenRequestEvent, OpenTarget, MainDefinition.openRequested, MainDefinition.secondInstance, SecondInstanceEventEvidence: packages/murasaki/test/associations.test.mjs, packages/murasaki/test/main-runtime.test.mjs, packages/murasaki/test/prod-server-http.test.mjs, crates/native/src/launcher.rs |
| Capability permissionsSecurity | Partial | Supported | Supported | Dev only |
API and evidenceAPI: MurasakiConfig.capabilities, WindowConfig.capabilities, NativeCapabilityEvidence: crates/native/src/webview.rs, packages/murasaki/test/native-api.test.mjs, packages/murasaki/test/windows.test.mjs |
| Linux distributionDistribution | Planned | Unavailable | Unavailable | Planned |
API and evidenceAPI: No supported public API Evidence:No automated evidence (not implemented) |
Reading the evidence
Open API and evidence in any row to see the supported public symbols and the automated test or workflow used as evidence. A build-only workflow proves that the code compiles on that platform; it does not turn an unexposed native helper into a supported framework API.
If implementation and this manifest disagree, treat the lower capability as the safe assumption and report the mismatch.