Initialize JetVeil project with desktop and server components#13
Merged
Initialize JetVeil project with desktop and server components#13
Conversation
- Added desktop package.json for Electron app configuration. - Created main package.json to manage scripts for both server and desktop. - Introduced server package-lock.json with dependencies for the ScramJet proxy server.
There was a problem hiding this comment.
Pull request overview
This PR reorients JetVeil to a desktop-first architecture by introducing an Electron wrapper that boots a bundled local Scramjet/bare proxy server and serves a revamped local browser UI, while removing legacy web/PWA hosting artifacts.
Changes:
- Added an Electron desktop app that starts/stops the local JetVeil server and loads the local UI.
- Updated the server to support new asset/transport routes, local packaging, and added client/server debug logging surfaces.
- Removed legacy web hosting/PWA files (Cloudflare/Vercel/GitHub Pages redirects) and updated documentation/build tooling.
Reviewed changes
Copilot reviewed 22 out of 30 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
| web/vercel.json | Removes Vercel SPA rewrite config for the legacy web app. |
| web/manifest.json | Removes legacy PWA manifest. |
| web/index.html | Removes legacy Flutter web entrypoint. |
| web/_redirects | Removes Cloudflare Pages SPA fallback rules. |
| web/_headers | Removes Cloudflare Pages security headers file. |
| server/src/index.js | Adds packaged assets + bare-as-module3 transport routing, debug logs endpoint, and reusable server start API. |
| server/public/styles.css | Updates UI styling for new browser chrome, tabs, debug panel, and preferences panel. |
| server/public/scramjet.sw.js | Adds a Scramjet service worker with enhanced error handling and debug messaging. |
| server/public/index.html | Updates UI shell: icons, tab strip, debug panel, and browser settings panel. |
| server/public/browser.js | Major rewrite: tabs, bypass-hosts direct mode, debug panel/logging, robust Scramjet init + recovery. |
| server/package.json | Bumps version and adds @mercuryworkshop/bare-as-module3 dependency. |
| server/package-lock.json | Locks server dependencies for reproducible installs. |
| scripts/run-package-command.mjs | Adds helper to run sub-package scripts with auto-install. |
| pubspec.yaml | Bumps version and adds assets/ to Flutter asset bundle (legacy). |
| package.json | Adds repo-level scripts to drive desktop/server workflows. |
| lib/services/bookmark_service.dart | Minor formatting change. |
| lib/screens/settings_screen.dart | Enhances accent color picker UI and adds live preview in legacy Flutter settings. |
| docs/index.html | Removes GitHub Pages redirect page. |
| docs/404.html | Removes GitHub Pages redirect 404 page. |
| desktop/package.json | Adds Electron + electron-builder packaging config and bundling of server/assets. |
| desktop/package-lock.json | Locks desktop dependencies for reproducible installs. |
| desktop/main.js | Adds Electron main process: splash, server lifecycle, window creation, quit handling. |
| assets/jetveilicon.icon/icon.json | Adds multi-layer icon definition asset. |
| _redirects | Removes repo-root Cloudflare redirect rules. |
| README.md | Updates documentation to match new desktop-first local-server architecture. |
| .gitignore | Adds Node/Electron ignores (node_modules, desktop dist) and runtime logs. |
Files not reviewed (1)
- server/package-lock.json: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…ng leading assets
Member
Author
|
I don't have real hardware to test Windows version. |
…to prevent damaged appimage+dmg.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces a major overhaul to JetVeil, shifting its focus to a desktop-first architecture with a local proxy server, and brings significant updates to the codebase, build system, and documentation. The most important changes are summarized below.
Desktop App Migration and Architecture Overhaul
desktop/main.js,desktop/package.json) that starts a local ScramJet proxy server on the user's device, launches the browser UI from the local server, and manages its lifecycle (including graceful shutdown). This replaces the previous web/PWA and remote-proxy-centric model. [1] [2]README.md) to reflect the new architecture, local development, and build instructions, and removed outdated deployment and web app instructions.Project Cleanup and Removal of Legacy Infrastructure
_redirects,docs/index.html,docs/404.html), as the project no longer relies on remote hosting for the web UI. [1] [2] [3]Assets and UI Enhancements
assets/jetveilicon.icon/icon.json).Encoded references:
[1] [2] [3] [4] [5] [6] [7] [8] [9]
Resolves #7