Show HN: Fenestra – double-click a local dist/index.html and it opens over localhost
I built Fenestra because I kept opening a terminal just to serve a static build. Modern builds use ES modules. Under file:// the browser blocks modules by CORS, absolute paths point at the drive root, and service workers do not exist. The usual fix is a terminal and a static server. Fenestra removes that step: it is the static server, attached to the double-click. Double-click an index.html (or drag a folder onto the executable) and Fenestra serves that folder on 127.0.0.1, on a stable port, and opens a normal tab in your browser. No Electron, no Node, no extension, no custom browser window. What it does: Windows: a ~120 KB .exe, .NET Framework only, no installer. Linux/macOS: a single static Go binary; Homebrew for the macOS CLI. Stable port per folder, so localStorage, cookies and service workers survive. SPA fallback for extensionless routes. Path confinement: parent paths, drive tricks and hidden files are rejected. Browser picker: Edge, Chrome, Firefox, Brave, Vivaldi, Opera, Chromium, Safari. Offline manual embedded in the executable, in seven languages. No cookies, no analytics, no telemetry. A static version.json is checked once a week; if there is an update, it opens one dismissible tab per version. Status: 1.1.0. It is functional, but I will not pretend it is finished. Honest rough edges: The binaries are not code-signed; SmartScreen/Gatekeeper will ask once. macOS has no notarized app; the build kit compiles one locally. It serves static files only: no backend, no API proxy, no TLS/auth. Some translations are community-made and not yet reviewed by native speakers. There are still a few bugs I am fixing as they are reported. Links: Site: https://benedetleandro.github.io/fenestra/ One-page presentation: https://benedetleandro.github.io/fenestra/presentation.html Manual: https://benedetleandro.github.io/fenestra/manual.html Source: https://github.com/benedetleandro/fenestra Release (binaries, manual, SHA256SUMS): https://github.com/benedetleandro/fenestra/releases/tag/v1.1.0 I would really appreciate feedback on: The Windows "set as default" flow – is it clear enough? The macOS build kit – does it work for you? Anything that broke or confused you in the first five minutes. If this is useful to even one person, it was worth building. Thanks for reading.
This is a summary aggregated from Dev.to. Read the complete article on the original site:
Read full article at Dev.to