IntegraciΓ³n Electron β
La integraciΓ³n Electron de KuaDashboard envuelve el stack completo (Express + Vue) en una aplicaciΓ³n de escritorio nativa.
Arquitectura de Procesos β
ββββββββββββββββββββββββββββββββββββββββ
β Proceso Principal Electron β
β β
β ββββββββββββββββββββββββββββββββ β
β β child_process.fork() β β
β β β server.js (Express) β β
β β β Escucha en :7190 β β
β ββββββββββββββββββββββββββββββββ β
β β
β ββββββββββββββββββββββββββββββββ β
β β BrowserWindow β β
β β β Carga http://localhost:7190β β
β β β preload.js (contextBridge)β β
β ββββββββββββββββββββββββββββββββ β
β β
β ββββββββββββββββββββββββββββββββ β
β β Manejadores IPC β β
β β β app:version β β
β ββββββββββββββββββββββββββββββββ β
ββββββββββββββββββββββββββββββββββββββββArchivos β
electron/main.js β
Punto de entrada del proceso principal. Responsabilidades:
- Hacer fork de
server.jscomo proceso hijo consilent: true - Esperar la seΓ±al stdout
"KuaDashboard running" - Crear
BrowserWindowcon preferencias web seguras - Construir el menΓΊ de la aplicaciΓ³n (adaptado por plataforma)
- Manejar eventos IPC
- Limpiar el proceso hijo al salir
electron/preload.js β
Puente seguro entre el renderer y el proceso principal:
js
window.kuaElectron = {
openExternal(url) // Abrir URL en el navegador del sistema
platform() // Retorna 'win32' | 'darwin' | 'linux'
getVersion() // VersiΓ³n de la app desde package.json
on(channel, callback) // Escuchar eventos IPC (canales permitidos)
removeListener(channel, handler)
}Canales IPC permitidos:
update:availablesystem-tools:changedserver:readyserver:error
