rspace-online/backlog/tasks/task-35 - Port-folk-multmux...

1.2 KiB

id title status assignee created_date labels milestone dependencies references priority
TASK-35 Port folk-multmux shape (xterm.js terminal emulator) To Do
2026-02-18 19:50
shape-port
phase-4
dev-tools
m-0
TASK-24
TASK-25
canvas-website/src/shapes/MultmuxShapeUtil.tsx
medium

Description

Port MultmuxShapeUtil from canvas-website to rspace-online.

Source: canvas-website/src/shapes/MultmuxShapeUtil.tsx (850 lines) Target: rspace-online/lib/folk-multmux.ts

Features to implement:

  • xterm.js terminal emulator in a shape
  • WebSocket session management with auto-reconnect
  • Session naming and persistence
  • Fit addon for responsive terminal sizing
  • Shape migration support (versioning)

Dependencies: @xterm/xterm, @xterm/addon-fit (TASK-24) Needs WebSocket terminal endpoint on server (TASK-25).

Acceptance Criteria

  • #1 Terminal renders with xterm.js
  • #2 WebSocket connection to terminal session works
  • #3 Auto-reconnect on disconnect
  • #4 Session state persists across page reloads
  • #5 Toolbar button added to canvas.html