Files
J621/desktop/package.json
T
JakeBreath cf129714be Add an Electron desktop shell for the SPA
desktop/ serves the normal frontend build over a privileged app://j621
scheme, so localStorage, OPFS, Web Workers, WebCodecs and history routing
behave exactly like Chrome. Development points at the Vite dev server;
`npm run smoke` runs headless Electron and checks the bundled app.

External links open in the system browser, and download navigations
(?download=1 or media URLs) are rerouted through webContents.downloadURL,
since preventing them cancels the download. The setup screen names the
shell's origin when the connection test fails, and the deploy docs list
app://j621 for CORS_ALLOWED_ORIGINS.
2026-09-20 17:07:22 -05:00

28 lines
980 B
JSON

{
"name": "j621-desktop",
"productName": "J621",
"version": "0.1.0",
"private": true,
"description": "Desktop shell for the J621 self-hosted media archive",
"author": "JakeBreath",
"license": "SEE LICENSE IN ../LICENSE",
"main": "dist/main.js",
"scripts": {
"build:main": "tsc -p tsconfig.json",
"build:renderer": "npm --prefix ../frontend run build",
"build": "npm run build:main && npm run build:renderer",
"dev": "npm run build:main && J621_DEV_SERVER=http://localhost:5173 electron .",
"start": "npm run build && electron .",
"smoke": "npm run build && xvfb-run -a electron . --j621-smoke",
"dist:linux": "npm run build && electron-builder --linux",
"dist:win": "npm run build && electron-builder --win",
"dist:all": "npm run build && electron-builder --linux --win"
},
"devDependencies": {
"@types/node": "^24.13.6",
"electron": "^44.4.3",
"electron-builder": "^26.15.3",
"typescript": "^6.0.3"
}
}