How c4rl0s79/emustartnxt works
EmuStartNXT combines Lumen, an Electron/React launcher, with the EmuStart engine and server. The user-facing flow is library browsing and management in Lumen, with the engine providing EmuStart services for server exchange; the documented direction is that Lumen reads local media while EmuStart handles server data exchange. The graph preserves library, artwork, profiles, saves, device sync, and server-access capabilities. Several engine subsystems are unsampled, so edges are limited to README statements and source-index references.
Main entry points: App.tsx Launcher UI · syncclient.py Save sync client · service.ts Library service · engine_main.py Engine process
Components 22
Lumen launcher
- Launcher UI
lumen/src/renderer/src/App.tsx - Library service
lumen/src/main/library/service.ts - LaunchBox integration
lumen/src/main/launchbox/service.ts - Artwork management
lumen/src/main/art/artSync.ts
EmuStart client engine
- Engine process
lumen/engine/engine_main.py - Engine API
lumen/engine/emustart/lumen.py - Device API client
emustart/emustart/remote.py - Library sync
emustart/emustart/libsync.py - Remote file access
emustart/emustart/netsrc.py - Player profiles
emustart/emustart/profiles.py - Save bundles
emustart/emustart/savebundles.py - Save sync client
emustart/emustart/syncclient.py - Save slots
emustart/emustart/saveslots.py
EmuStart server
- Server HTTP routing
emustart/emustart/server.py - Device endpoints
emustart/emustart/remote.py - Public access
emustart/emustart/public.py - Server library sync
emustart/emustart/library.py - Server save sync
emustart/emustart/savesync.py
Local data and media
- Game library
emustart/emustart/library.py - Local media files
lumen/src/main/localMedia.ts
Other components
- User
- EmuStart server
Connections 20
- User → Launcher UI: browses
lumen/src/renderer/src/App.tsx - Launcher UI → Library service: requests library
lumen/src/renderer/src/App.tsx - Library service → Game library: merges library data
lumen/src/main/library/service.ts - Library service → LaunchBox integration: uses lookup and builder
lumen/src/main/library/service.ts - Launcher UI → Artwork management: manages artwork
- Launcher UI → Engine process: starts engine
- Engine process → Engine API: attaches API
lumen/engine/engine_main.py - Engine process → Server HTTP routing: starts server
lumen/engine/engine_main.py - Engine API → Local media files: reads local media
- Server HTTP routing → Device endpoints: routes device requests
emustart/emustart/server.py - Device endpoints → Server library sync: serves library data
emustart/emustart/remote.py - Device endpoints → Server save sync: serves save operations
emustart/emustart/remote.py - Device API client → EmuStart server: exchanges data
- Library sync → Game library: updates library
emustart/emustart/libsync.py - Remote file access → EmuStart server: reads game files
- Player profiles → Game library: stores profile data
emustart/emustart/profiles.py - Save sync client → Save bundles: packages saves
emustart/emustart/syncclient.py - Save sync client → Save slots: checks slots
emustart/emustart/syncclient.py - Save sync client → Server save sync: syncs saves
emustart/emustart/syncclient.py - Server HTTP routing → Public access: checks public access
emustart/emustart/server.py