## Session 7 — GIF Search + p5.js Viz + Self-Healing (June 15, 2026) ### Exercises | # | Skill | Result | |---|-------|--------| | 1 | **gif-search** | Needs TENOR_API_KEY - noted for setup | | 2 | **p5.js** | Network visualization at `~/homelab-viz.html` ✅ | | 3 | **Self-Healing Infrastructure** | Hourly cron created ✅ | ### p5.js Homelab Visualization 🎨 Interactive network graph at `~/homelab-viz.html` - 14 nodes pulsing with data flowing between them - Color-coded by type (network, hypervisor, app, data, media) - Real-time connection animation with glow effects - Dark themed, responsive canvas ### Self-Healing Infrastructure 🩺 Hourly cron: auto-detects and fixes: - Qdrant crash-loop → restart service - Vikunja down → restart service - Jellyfin offline → check Proxmox VM - C2builders dead → check Proxmox CT - ArchiveBox port closed → check Proxmox CT - Disk pressure on Proxmox ZFS pool ### Cumulative Skills Log | Category | Skills Exercised | |----------|-----------------| | Infrastructure | Proxmox, Router, SSH Fleet, Docker, The Hex, Qdrant, Langfuse, C2builders, ArchiveBox, Health Watchdog, Self-Healing | | Creative | Architecture Diagram, Excalidraw, ASCII Art, p5.js | | Development | Three.js, n8n Analysis | | Data Science | Jupyter Live Kernel | | Research | arXiv | | DevOps | Gitea Management, Cron Automation | | ML/Observability | Langfuse Plugin | | Social | xurl CLI (needs auth) | | Media | gif-search (needs API key) | | Documentation | WikiJS, Obsidian (no vault) |