Web Desktop Environment for SBCs
Find a file
roberts a73b515258 Add native GUI app support via per-window frame streaming
Each configured GUI app (e.g. Nextcloud) gets its own dock icon and
opens as a regular Atlus tab. Under the hood: Xvfb virtual display,
ImageMagick captures individual window pixmaps as JPEG, streams over
WebSocket to a canvas element, with xdotool forwarding mouse/keyboard
input back to the X11 window. Apps persist in background when tab is
closed, and streaming pauses when no viewers are attached.

New files: backend/display.py (DisplayManager + ManagedGuiApp),
backend/routers/display.py (WebSocket + REST), frontend display.js/css.
Config: gui_apps array in settings for registered applications.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-14 23:09:15 -05:00
backend Add native GUI app support via per-window frame streaming 2026-03-14 23:09:15 -05:00
frontend Add native GUI app support via per-window frame streaming 2026-03-14 23:09:15 -05:00
.gitignore Initial commit — Atlus web desktop environment for SBCs 2026-03-14 16:53:46 -05:00
atlus.service Initial commit — Atlus web desktop environment for SBCs 2026-03-14 16:53:46 -05:00
ATLUS_CONTEXT.md Initial commit — Atlus web desktop environment for SBCs 2026-03-14 16:53:46 -05:00
install.sh Add native GUI app support via per-window frame streaming 2026-03-14 23:09:15 -05:00
LICENSE Initial commit — Atlus web desktop environment for SBCs 2026-03-14 16:53:46 -05:00
package.sh Initial commit — Atlus web desktop environment for SBCs 2026-03-14 16:53:46 -05:00