Releases: hyperpolymath/gossamer
Releases · hyperpolymath/gossamer
Gossamer v0.1.0 — Phase 1 (Linux)
Gossamer v0.1.0 — A Linearly-Typed Webview Shell
First release of Gossamer, a webview shell framework built in Ephapax with compile-time proofs of resource safety.
What's included
- Zig FFI (
libgossamer.so/libgossamer.a) — WebKitGTK bindings for Linux - Idris2 ABI — formal specification with dependent type proofs
- Ephapax core modules — Shell.eph, Bridge.eph, Capabilities.eph
__ffi()intrinsic — native function calls via dlopen- Region-linear fusion — no GC, no refcounting, compile-time lifecycle enforcement
Novel contributions
- Linearly-owned webview handles — use-after-free and double-free are compile errors
- Typed IPC — frontend-backend message shape agreement at compile time
- Linear capability tokens — permissions enforced by the type system, not runtime config
Quick start
# Prerequisites (Fedora)
sudo dnf install gtk3-devel webkit2gtk4.1-devel zig
# Build
cd src/interface/ffi && zig build
# Run (requires ephapax compiler)
ephapax run examples/hello/run.eph -L libgossamer.soPhase roadmap
- v0.1 (this release): Linux (WebKitGTK)
- v0.2: macOS (WKWebView) + Windows (WebView2)
- v0.3: Mobile (iOS/Android)
- v1.0: Plugin system, auto-updater