Files
wled-screen-controller-mixed/plans/demo-mode/PLAN.md
alexei.dolgolyov 2240471b67 Add demo mode: virtual hardware sandbox for testing without real devices
Demo mode provides a complete sandbox environment with:
- Virtual capture engine (radial rainbow test pattern on 3 displays)
- Virtual audio engine (synthetic music-like audio on 2 devices)
- Virtual LED device provider (strip/60, matrix/256, ring/24 LEDs)
- Isolated data directory (data/demo/) with auto-seeded sample entities
- Dedicated config (config/demo_config.yaml) with pre-configured API key
- Frontend indicator (DEMO badge + dismissible banner)
- Engine filtering (only demo engines visible in demo mode)
- Separate entry point: python -m wled_controller.demo (port 8081)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 16:17:14 +03:00

2.1 KiB

Feature: Demo Mode

Branch: feature/demo-mode Base branch: master Created: 2026-03-20 Status: 🟡 In Progress Strategy: Big Bang Mode: Automated Execution: Orchestrator

Summary

Add a demo mode that allows users to explore and test the app without real hardware. Virtual capture engines, audio engines, and device providers replace real hardware. An isolated data directory with seed data provides a fully populated sandbox. A visual indicator in the UI makes it clear the app is running in demo mode.

Build & Test Commands

  • Build (frontend): cd server && npm run build
  • Typecheck (frontend): cd server && npm run typecheck
  • Test (backend): cd server && python -m pytest ../tests/ -x
  • Server start: cd server && python -m wled_controller.main

Phases

  • Phase 1: Demo Mode Config & Flag [domain: backend] → subplan
  • Phase 2: Virtual Capture Engine [domain: backend] → subplan
  • Phase 3: Virtual Audio Engine [domain: backend] → subplan
  • Phase 4: Demo Device Provider & Seed Data [domain: backend] → subplan
  • Phase 5: Frontend Demo Indicator & Sandbox UX [domain: fullstack] → subplan
  • Phase 6: Demo-only Engine Resolution [domain: backend] → subplan

Phase Progress Log

Phase Domain Status Review Build Committed
Phase 1: Config & Flag backend Done
Phase 2: Virtual Capture Engine backend Done
Phase 3: Virtual Audio Engine backend Done
Phase 4: Demo Device & Seed Data backend Done
Phase 5: Frontend Demo UX fullstack Done
Phase 6: Engine Resolution backend Done

Final Review

  • Comprehensive code review
  • Full build passes
  • Full test suite passes
  • Merged to master