Commite6ff32f4Recorded19 Jul 2026Repositorylantern

lantern: add RELEASES.md with 0.1.0 release notes

Changed
 RELEASES.md | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)
Diff
RELEASES.mdadded
@@ -0,0 +1,34 @@
+1
---
+2
title: Releases
+3
slug: releases
+4
---
+5
+6
<!--
+7
Authoring notes for release entries (this comment is not published):
+8
- Match the voice and structure of the existing sections below.
+9
- Lead with real user impact: what changed for someone using Lantern and why it
+10
matters, not the internal implementation. Keep it concise, a few sentences an item.
+11
- Each release: a `## X.Y.Z` heading, a one-paragraph summary, then `###` subsections.
+12
Prefer concrete specifics (a metric, a command, a symptom) over vague claims.
+13
- No em-dashes; use commas, colons, or separate sentences.
+14
- Note "Existing projects build without changes" when it is true.
+15
-->
+16
+17
# Lantern Releases
+18
+19
+20
## 0.1.0
+21
+22
The first release. Point Lantern at a Sigil web build and get a native desktop app: a real window, a secure JavaScript to Sigil bridge, and optional local filesystem and terminal access, built all the way down in Sigil over sigil-ffi. No Rust, no Node, no C glue. Linux-first, on GTK4 and WebKitGTK, with the backend interface leaving room for macOS and Windows later.
+23
+24
### A native window for any Sigil web build
+25
+26
`lantern run <dir|url>` opens a web build in a real desktop window. Assets are served over the app's own `lantern://` origin, so the page loads as a first-class app rather than a `file://` document, and any link the page opens goes to the system browser instead of hijacking the window. The same web build still runs unmodified in a plain browser: `lantern.available` feature-detects the bridge, so desktop features light up when they are present and the app degrades gracefully when they are not.
+27
+28
### A secure bridge between the page and Sigil
+29
+30
The page talks to the host through one channel: `lantern.invoke(cmd, args)` returns a Promise, and `lantern.on(event, fn)` subscribes to host events. The page may only invoke commands the app registered, and nothing the page supplies is ever evaluated as Sigil, so a web build cannot reach past the commands you gave it. Apps add their own commands and host-to-page events through a small plugin system.
+31
+32
### Local filesystem and terminal access
+33
+34
The `lantern-system` plugin gives a local app real capabilities: reading and writing files, and a true terminal (a PTY) to run a shell, a build, or a coding agent in. It follows the owner model, on by default when you point Lantern at a local build (it is your own machine and your own app) and off for a remote URL unless you opt in.