Skip to content

SillyLittleTech/JetVeil

Repository files navigation

JetVeil

JetVeil is a desktop-first web wrapper app that runs a local ScramJet proxy server on the user's device.

It is the spiritual successor to ACPRox. JetVeil, however, is desktop focused, admisted rising policy regulations from free providers on Reverse Proxies being hosted on their hardware, due to heavy bandwidth and possible legal issues.

Architecture

Layer Technology Runtime
Desktop wrapper Electron+Flutter Windows / macOS / Linux
Local proxy server Node.js + ScramJet + bare-server User device (localhost)
Browser UI Existing JetVeil HTML/CSS/JS Loaded from local server

Project layout

  • desktop/ Electron app entrypoint and window runtime.
  • server/ ScramJet + bare proxy server and JetVeil UI assets.
  • lib/ Legacy Flutter code (not used by the new desktop runtime).

Local development

Install dependencies:

npm run install:all

Start desktop app:

npm run dev

Run only server (optional):

npm run server:start

Build desktop binaries

The repo-level build scripts now bootstrap their own dependencies, so a fresh clone can run them directly.

Build for current Linux machine:

npm run build:linux

Build for macOS (ZIP, recommended for quick testing):

npm run build:macos

Optional DMG build:

npm run build:mac:dmg

Build unpacked app folder (fast local smoke test):

npm run pack

Build using Electron Builder default targets:

npm run build

Output artifacts are written under desktop/dist/.

Use this file for macOS testing:

  • desktop/dist/JetVeil-1.6.3-arm64-mac.zip

Do not open these directly:

  • desktop/dist/JetVeil-1.0.0-mac.zip.blockmap (auto-update metadata)
  • desktop/dist/latest-mac.yml (update manifest)

Important notes:

  • Linux cannot produce signed macOS binaries.
  • Cross-building Windows installers from Linux may require additional toolchain setup.
  • The desktop build embeds the local server/ runtime and static UI assets, so no hosted web build is required.
  • If DMG packaging errors with a missing dmg-license module, use ZIP builds (npm run build:mac) or install dmg-license in desktop/ and retry the DMG target.
  • macOS builds in this repository are currently ad-hoc signed, not Apple notarized. Gatekeeper may show a malware verification warning.

If macOS blocks launch with "could not verify ... free of malware", run:

xattr -dr com.apple.quarantine /Applications/JetVeil.app
open /Applications/JetVeil.app

Notes

  • The desktop app starts the local server on a random available localhost port.
  • When the desktop app exits, it gracefully shuts down the local proxy server.
  • Existing visual design is kept through server/public/index.html and server/public/styles.css.

License

AGPL-3.0 © SillyLittleTech