[ANN] Experimental Julia language web multimedia browser

[ANN] NativeJuliaBrowser.jl – native WebKitGTK browser app in Julia, PackageCompiler-ready
Hi all,

I’ve been working on a native desktop web browser prototype in Julia using GTK 3 + WebKitGTK, with a structure that is ready for PackageCompiler app builds.

Current features:

  • native WebKitWebView
  • native GTK notebook tabs
  • downloads
  • bookmarks
  • native file-open dialog
  • julia_main()::Cint entry point for PackageCompiler.create_app(...)

The project is currently Linux-focused and uses direct ccall bindings to GTK/WebKitGTK.

What I would especially like feedback on:

  1. package structure and Julia style
  2. PackageCompiler app layout
  3. better handling of GTK/WebKit system dependencies
  4. whether this should evolve into a more idiomatic package or remain a focused app prototype

ZIP package:

Build outline:

using PackageCompiler

create_app(
    ".",
    "NativeJuliaBrowserCompiled";
    executables = ["NativeJuliaBrowser" => "julia_main"],
    incremental = false,
)
System libraries currently expected on Linux:
libgtk-3
libwebkit2gtk
I’d appreciate any suggestions on:
popup-to-tab support
better relocatability
artifact/JLL strategy for GTK/WebKit
packaging conventions for GUI apps in Julia
Thanks.
1 Like