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…
Leandro Benedetti created Fenestra to eliminate the need for opening a terminal just to serve a static build. Modern web applications often use ES modules, which encounter issues like CORS blocking under file:// protocol, absolute paths pointing to the drive root, and lack of service workers. Fenestra aims to simplify the process by serving static files directly from a double-click on an index.html file or dragging a folder onto the executable.
Fenestra provides a stable port on 127.0.0.1 for any folder, allowing localStorage, cookies, and service workers to remain intact. The software supports Windows, Linux, and macOS with binaries ranging from 120 KB for Windows (using .NET Framework without an installer) to a single static Go binary for Linux and macOS, available via Homebrew for macOS users.
The software ensures path safety by rejecting parent paths, drive tricks, and hidden files, and offers a browser picker for Edge, Chrome, Firefox, Brave, Vivaldi, Opera, Chromium, and Safari. Fenestra comes with offline manual support in seven languages, does not include cookies, analytics, or telemetry, and checks for updates once a week through an embedded version.json file.
Currently at version 1.1.0, Fenestra is functional but not yet finished, with some rough edges such as absence of code signing and potential SmartScreen/Gatekeeper prompts on Windows, lack of notarized app for macOS, serving only static files without backend or API proxy, and some unresolved bugs reported by users. Despite these minor issues, the software is available on its GitHub page and website, with feedback encouraged on its usability and functionality.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.