mirror of
https://github.com/Pandipipas/scoreko-electron-dev.git
synced 2026-06-05 21:22:07 +00:00
e120bf1d4ade493428dbb2d68401eb7f1a62d85e
scoreko-electron-dev
Wrapper de Electron para empaquetar una instalación de NodeCG que incluya el bundle scoreko-dev, inspirado en opeik/runback-electron pero actualizado a Electron + TypeScript moderno.
Requisitos clave
- Node
>=22(.nvmrcincluido). - Electron fijado en
39.5.1.
Qué hace
- Arranca
lib/nodecg/index.jscomo proceso hijo desde Electron. - Muestra la ruta de dashboard de carga del bundle (
/bundles/<bundle>/dashboard/loading.html) servida por NodeCG mientras inicia. - Carga el dashboard del bundle en
http://localhost:<puerto>/bundles/<bundle>/<ruta-dashboard>. - Empaqueta NodeCG + assets dentro de la app final con
electron-builder.
Estructura esperada
scoreko-electron-dev/
├─ lib/
│ └─ nodecg/
│ ├─ index.js
│ ├─ node_modules/
│ └─ bundles/
│ └─ scoreko-dev/
├─ src/main/main.ts
├─ static/icons/
└─ package.json
Scripts
npm run dev: modo desarrollo.npm run build: compila TypeScript y copia assets.npm run start: build y ejecución local.npm run test: build + tests unitarios (node:test).npm run doctor: preflight de configuración y entorno (lib/nodecg, permisos, puerto y env vars).npm run lint: reglas mínimas de calidad con ESLint.npm run format: validación de formato con Prettier.npm run pack: genera app sin instalador.npm run dist: genera instalador.
Variables de entorno
La fuente única de defaults está en .env.example.
- Copia
.env.examplea.env(o exporta variables en tu shell/CI). - Ajusta sólo lo necesario.
- Ejecuta
npm run doctorpara validar configuración antes de arrancar.
Build multi-plataforma (iconos)
build.win.icon:static/icons/icon.icobuild.linux.icon:static/iconsbuild.mac.icon:static/icons/icon.icns
El
.icnsse referencia en la configuración de build y debe existir localmente para empaquetar macOS.
Troubleshooting y arquitectura
- Guía de troubleshooting:
docs/troubleshooting.md - Mapa de arquitectura:
docs/architecture.md - Roadmap:
docs/refactor-roadmap.md
Description
Languages
TypeScript
82.4%
JavaScript
11%
HTML
4.7%
NSIS
1.9%