DJ Visualizer Pi: standalone Node+WebSocket server with mobile PWA remote

New separate project (the Electron Mac app stays untouched). Reuses the visual
engine (WebGL shaders, effect catalog, Web Audio) verbatim and replaces Electron
IPC with a Node HTTP+WebSocket server:

- server.js: serves the kiosk output page + mobile control PWA, relays the same
  ctl/rpt JSON protocol over WebSocket, plus REST for media library/upload,
  JSON state (pads), waveform peaks and MP4 recording (ffmpeg).
- public/js/net.js: window.djv shim over WebSocket+HTTP so output.js runs intact.
- public/index.html + control.js: touch-first mobile remote (effects, media/queue,
  ticker, pads, audio/EQ, fullscreen + recording).
- PWA (manifest + service worker + generated icons).
- scripts/: Chromium kiosk launcher + install-pi.sh (systemd units for Pi 5).

Verified: REST endpoints, WebSocket relay both directions, control PWA loads the
2958-effect catalog and renders. (Headless WebGL output not testable without GPU.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
lucianoandClaude Opus 4.8 committed 2026-06-29 13:06:15 +02:00
commit b94c787231
81 files changed
+23994

No files matched your search

+4
View File
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg id="svg4570" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="1604" viewBox="0 0 947 1604" width="947" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
<path id="path4580" d="m360.58 1593.2c-0.31662-1.5125-1.0006-5.675-1.5199-9.25s-3.6643-22.925-6.9888-43-6.705-40.55-7.5122-45.5c-0.80714-4.95-2.85-17.1-4.5396-27s-3.5081-20.925-4.041-24.5c-1.3373-8.9712-4.4112-27.636-7.4936-45.5-1.4235-8.25-2.9986-17.705-3.5003-21.011-0.50167-3.3061-1.8487-11.631-2.9934-18.5-1.1447-6.8689-2.7394-16.742-3.5437-21.94-0.80434-5.1984-2.9896-18.473-4.8563-29.5-1.8666-11.027-4.4146-26.235-5.6622-33.796-2.7665-16.766-1.6217-15.692-20.932-19.629-13.325-2.7167-23.503-4.8808-42.5-9.0377-2.2-0.4814-8.5-1.8073-14-2.9464-5.5-1.1392-15.175-3.1783-21.5-4.5315-6.325-1.3531-19.15-4.0975-28.5-6.0985s-31.85-6.7763-50-10.612c-18.15-3.8355-35.7-7.6038-39-8.3741-3.3-0.7702-14.775-3.2392-25.5-5.4867s-21.3-4.4956-23.5-4.9959c-2.2-0.5002-9.85-2.0951-17-3.544-16.467-3.2-21.5-5-21.5-7.4 0-1.6 2.3967-16.1 4.9528-30 0.7047-3.8341 5.0773-28.654 8.0158-45.5 0.4797-2.75 1.1164-5.675 1.4148-6.5 0.29845-0.825 1.2291-6 2.068-11.5 0.83898-5.5 2.4013-14.725 3.4719-20.5 4.5662-24.632 9.9316-54.477 13.124-73 1.09-6.325 2.6456-15.1 3.457-19.5 0.81132-4.4 2.3947-13.4 3.5186-20s3.1343-17.85 4.4675-25 3.3612-18.4 4.5065-25c1.1454-6.6 2.7512-15.375 3.5686-19.5 0.81736-4.125 1.8755-9.975 2.3514-13s2.2772-13.15 4.0028-22.5c1.7257-9.35 3.7785-20.6 4.562-25 0.78344-4.4 2.3408-12.95 3.4607-19 1.12-6.05 3.3974-18.875 5.0609-28.5 4.4509-25.753 4.8895-28.235 7.5979-43 3.4089-18.584 5.2238-28.782 5.9621-33.5 0.34426-2.2 1.7136-9.85 3.043-17s2.8959-15.7 3.4812-19c0.58528-3.3 1.4536-8.025 1.9295-10.5 0.94979-4.939 3.6827-20.621 6.9706-40 1.1665-6.875 2.7426-15.425 3.5025-19 0.75993-3.575 2.0837-10.55 2.9416-15.5 3.2944-19.007 8.2793-47.124 12.676-71.5 0.54566-3.025 1.3908-7.975 1.8781-11 0.82694-5.1334 3.333-18.956 7.9777-44 1.071-5.775 3.5736-19.725 5.5613-31s4.7552-26.575 6.15-34 3.7993-20.7 5.3432-29.5c2.6608-15.166 6.6276-37.574 10.976-62 1.0769-6.05 2.4419-13.925 3.0333-17.5 0.59138-3.575 1.4859-8.3 1.9878-10.5 0.50194-2.2 2.0841-10.75 3.5159-19s3.7217-21.075 5.0888-28.5c1.367-7.425 3.3449-18.45 4.3954-24.5 1.7931-10.328 4.7776-26.99 7.075-39.5 0.55553-3.025 1.4124-7.975 1.9042-11 0.49176-3.025 1.533-8.875 2.3139-13 0.78088-4.125 1.9804-10.875 2.6656-15 0.68522-4.125 1.9102-10.875 2.7222-15 0.81201-4.125 1.8645-9.975 2.3389-13 0.47441-3.025 2.2286-12.925 3.8981-22 3.6594-19.891 4.5202-24.677 6.6543-37 0.90489-5.225 2.268-12.34 3.029-15.812 0.75-3.484 1.37-7.821 1.37-9.651 0-4.237 2.8316-7.9343 5.3394-6.972 1.599 0.61357 28.114 30.534 79.661 89.893 8.525 9.817 22.475 25.792 31 35.499 8.525 9.7076 22.475 25.699 31 35.537 8.525 9.8376 19.115 21.961 23.534 26.94 4.4189 4.9796 9.3689 10.674 11 12.655 1.6311 1.9804 7.5163 8.7304 13.078 15 16.191 18.251 34.29 38.925 42.387 48.419 8.827 10.349 10.773 12.582 23.14 26.556 10.154 11.473 23.726 26.986 42.014 48.02 6.4095 7.3723 19.685 22.563 29.5 33.757 9.8154 11.194 19.871 22.745 22.346 25.669 5.6106 6.6282 27.515 31.827 29.24 33.638 0.70165 0.73661 7.339 8.3143 14.75 16.839 7.4106 8.525 13.707 15.725 13.992 16 0.54056 0.52151 13.214 15.018 16.173 18.5 1.9086 2.2456 19.453 22.126 24.239 27.465 1.7082 1.906 4.2308 4.8635 5.6058 6.5723s5.2669 6.2244 8.6486 10.035c3.3818 3.8102 16.13 18.403 28.33 32.428s24.994 28.65 28.431 32.5c3.4375 3.85 10.689 12.175 16.114 18.5 5.4249 6.325 17.539 20.239 26.92 30.921 9.3811 10.682 20.207 23.072 24.057 27.534 3.85 4.4623 8.3986 9.6729 10.108 11.579 4.6279 5.1604 24.371 27.79 28.392 32.542 1.925 2.2752 7.1 8.1605 11.5 13.078 4.4 4.9179 10.025 11.353 12.5 14.3 2.475 2.9472 5.4487 6.3006 6.6082 7.452s5.5067 6.1434 9.6604 11.093c4.1537 4.95 11.407 13.275 16.118 18.5 10.931 12.123 10.956 11.142-0.76067 30.785-5.1555 8.6433-11.118 18.763-13.25 22.488-2.132 3.7251-10.592 18.125-18.8 32-20.078 33.94-23.282 39.407-30.599 52.227-3.4534 6.05-7.2818 12.575-8.5076 14.5-1.2257 1.925-5.506 9.125-9.5117 16s-8.2943 14.075-9.5301 16c-1.2359 1.925-3.08 5.075-4.098 7s-5.3639 9.35-9.6575 16.5-8.1769 13.675-8.6295 14.5c-0.45257 0.825-2.2836 3.975-4.0689 7s-4.1382 7.075-5.2286 9c-4.7662 8.4143-13.178 22.788-15.216 26-1.2212 1.925-4.8384 8-8.0382 13.5s-6.8962 11.719-8.2142 13.819c-3.3576 5.3511 0.55358 10.4 40.912 52.814 3.4713 3.6481 8.7865 9.299 11.812 12.558 9.9343 10.701 26.449 28.561 40.049 43.31 11.524 12.498 26.323 28.406 46.515 50 2.8285 3.025 11.596 12.475 19.483 21 7.8873 8.525 19.541 21.055 25.897 27.844 6.356 6.7891 11.662 12.639 11.79 13 1.1642 3.2679-4.8958 3.9121-62.734 6.6686-17.875 0.852-40.15 1.9918-49.5 2.5331-9.35 0.5412-30.275 1.6527-46.5 2.4699-58.528 2.9479-88.873 4.4655-109.5 5.4762-11.55 0.5659-23.7 1.225-27 1.4647s-16.575 0.9316-29.5 1.5375c-29.037 1.3614-33.673 1.8128-35.251 3.433-0.68717 0.7055-3.9494 4.7837-7.2494 9.0626-6.8529 8.8857-11.952 15.356-13.757 17.457-0.68359 0.7956-4.0317 5.0706-7.4402 9.5-6.4638 8.3998-11.403 14.675-19.467 24.731-1.4653 1.8274-7.5403 9.5756-13.5 17.218-5.9597 7.6427-13.398 17.093-16.529 21-3.1314 3.9074-7.8292 10.029-10.44 13.604-2.6105 3.575-5.0664 6.725-5.4575 7-0.71628 0.5035-7.6963 9.447-11.409 14.619-1.1 1.532Line truncated
</svg>

After

Width:  |  Height:  |  Size: 17 KiB