Skip to content

Repository files navigation

desktop_webview

Native desktop webview host for elixir-desktop.

The host is a stand-alone native binary per platform. It listens on localhost TCP and speaks JSON-RPC 2.0 (length-prefixed frames). The Elixir package implements Desktop.Platform behaviours and connects as the client. In packaged apps the host spawns the BEAM release; in development an existing BEAM can launch the host with --edw-no-beam.

PlatformEngineStatus
macOSWKWebViewPrimary — see docs/status/macos.md
WindowsWebView2Planned — docs/status/windows.md
LinuxWebKitGTKUsable — docs/status/linux.md

Quick start (development)

# mix.exs{:desktop_webview,"~> 0.1"}# config/config.exsconfig:desktop,:backend,DesktopWebview.Backendconfig:desktop,:menu_adapter,DesktopWebview.Menu.Adapter

Build the native host for your OS (or use a vendored/CI binary):

./scripts/build_macos.sh # macOS → priv/native/macos/DesktopWebView
./scripts/build_linux.sh # Linux → priv/native/linux/DesktopWebView
mix test# unit
mix test.e2e # needs host binary; starts with --edw-test-rpc

Packaged layout (macOS)

MyApp.app/
Contents/MacOS/DesktopWebView
Contents/Resources/DesktopWebView.ini # optional
Contents/Resources/beam/bin/<app>

Host flags use the --edw-* prefix; all other argv is forwarded to the BEAM app. See docs/packaging.md.

Documentation

License

MIT

About

Standalone Webview Kiosk for elixir-desktop

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages