Content is user-generated and unverified.
// package.json { "name": "mi-pwa-app", "version": "1.0.0", "description": "Mi PWA como aplicación de escritorio", "main": "main.js", "scripts": { "start": "electron .", "build": "electron-builder", "pack": "electron-builder --dir", "dist": "electron-builder" }, "build": { "appId": "com.miempresa.mipwa", "productName": "Mi PWA App", "directories": { "output": "dist" }, "files": [ "**/*", "!node_modules", "!src", "!*.md" ], "linux": { "target": [ { "target": "AppImage", "arch": ["x64", "arm64"] }, { "target": "deb", "arch": ["x64", "arm64"] }, { "target": "rpm", "arch": ["x64", "arm64"] } ], "category": "Utility", "icon": "assets/icon.png" } }, "devDependencies": { "electron": "^latest", "electron-builder": "^latest" } } // main.js const { app, BrowserWindow, Menu } = require('electron'); const path = require('path'); function createWindow() { const mainWindow = new BrowserWindow({ width: 1200, height: 800, webPreferences: { nodeIntegration: false, contextIsolation: true, enableRemoteModule: false, webSecurity: true }, icon: path.join(__dirname, 'assets/icon.png'), titleBarStyle: 'default' }); // Cargar la PWA desde URL o archivos locales mainWindow.loadURL('https://tu-pwa-url.com'); // O cargar desde archivos locales si tienes los archivos de la PWA // mainWindow.loadFile('app/index.html'); // Opcional: remover menu bar Menu.setApplicationMenu(null); // Manejar enlaces externos mainWindow.webContents.setWindowOpenHandler(({ url }) => { require('electron').shell.openExternal(url); return { action: 'deny' }; }); } app.whenReady().then(() => { createWindow(); app.on('activate', () => { if (BrowserWindow.getAllWindows().length === 0) { createWindow(); } }); }); app.on('window-all-closed', () => { if (process.platform !== 'darwin') { app.quit(); } }); // Configuración adicional para PWA app.on('web-contents-created', (event, contents) => { contents.on('new-window', (navigationEvent, url) => { navigationEvent.preventDefault(); require('electron').shell.openExternal(url); }); });
Content is user-generated and unverified.
    Configuración Electron para PWA | Claude