Status : IMPLEMENTEE
L'ancien dashboard avait 25 pages HTML. Le nouveau frontend en a 7. Il manque 16 pages, dont 2 sont des projets indépendants (linkedin, needfinder).
| # | Page | Contenu | Backend existant | Travail backend |
|---|---|---|---|---|
| A1 | /raidz |
Detail RAIDZ : disques, modeles, scrub, folders par pool | /api/infra/zfs partiel |
Enrichir collecteur ZFS (zpool status, zfs list) |
| A2 | /alerts |
Alertes aggregees : ZFS errors, disk >80%, containers down, RAM | Données dispo via plusieurs endpoints | Nouveau /api/alerts — agrege les collectors existants |
| A3 | /crons |
Crons : schedule, status, historique, timeline 24h | Rien | Nouveau collecteur SSH (logs rsync, gitlab backup, etc.) |
| A4 | /architecture |
Hyperviseurs, VMs, containers par stack, storage, réseau | Partiel (docker, zfs, system) | Nouveau collecteur Proxmox VMs (qm list) |
| A5 | /montages |
Mounts NFS, symlinks, volumes Docker par container | Rien | Nouveau collecteur SSH (df -h, symlinks) + Portainer volumes |
| A6 | /models |
Modeles Ollama : taille, VRAM, speed, use-case | /api/ai/tools existe |
Enrichir ou page semi-statique avec données live GPU |
| A7 | /shortlinks |
Liens rapides catégorisés + status live | /api/services/health (9 services) |
Etendre la liste des services ou config statique |
| A8 | /syncthing |
Status container Syncthing, device ID, config | /api/docker/containers |
Filtrage container — peu de travail backend |
| # | Page | Contenu | Travail |
|---|---|---|---|
| B1 | /endpoints |
Documentation API (méthodes, URLs, exemples) | Frontend only — page statique |
| B2 | /doc |
Documentation infra (machines, ports, stacks, CI/CD) | Frontend only — page statique |
| B3 | /schema |
Schéma réseau SVG interactif | Frontend only — SVG embarqué |
| B4 | /secrets |
Credentials (lecture seule, sensible) | Frontend only — données hardcodées |
| B5 | /o2switch |
Status O2switch, backups, liens externes | Frontend only — majoritairement statique |
| # | Page | Contenu | Travail |
|---|---|---|---|
| C1 | /yolo |
Interface YOLO (upload + detection) | Frontend only — appel direct API yolo.33800 |
linkedin.html → projet séparéneedfinder.html / needfinder-v2.html → projet séparé| Ordre | Fichier | Travail | Priorité |
|---|---|---|---|
| 1 | backend/src/collectors/ssh.ts |
Enrichir collectZfs() : ajouter zpool status parsing (disques, type, scrub) + zfs list (folders) |
HAUTE |
| 2 | backend/src/routes/infra.ts |
Nouvel endpoint /api/infra/zfs/detail |
HAUTE |
| 3 | backend/src/collectors/ssh.ts |
Nouveau collectCrons() : parse logs rsync, gitlab backup |
MOYENNE |
| 4 | backend/src/routes/infra.ts |
Nouvel endpoint /api/infra/crons |
MOYENNE |
| 5 | backend/src/collectors/ssh.ts |
Nouveau collectMounts() : df -h + symlinks par serveur |
MOYENNE |
| 6 | backend/src/routes/infra.ts |
Nouvel endpoint /api/infra/mounts |
MOYENNE |
| 7 | backend/src/routes/alerts.ts |
Nouveau /api/alerts : agrege zfs+system+docker+services avec seuils |
HAUTE |
| 8 | backend/src/collectors/ssh.ts |
Nouveau collectProxmoxVms() : qm list sur PVE |
BASSE |
| 9 | backend/src/routes/infra.ts |
Nouvel endpoint /api/infra/vms |
BASSE |
| Ordre | Route | Groupe | Dépend de | Difficulté |
|---|---|---|---|---|
| 1 | /raidz |
A1 | Backend #1-2 | Moyenne |
| 2 | /alerts |
A2 | Backend #7 | Moyenne |
| 3 | /shortlinks |
A7 | Config statique + health | Facile |
| 4 | /models |
A6 | /api/ai/tools existant |
Facile |
| 5 | /syncthing |
A8 | /api/docker/containers existant |
Facile |
| 6 | /crons |
A3 | Backend #3-4 | Haute (timeline) |
| 7 | /montages |
A5 | Backend #5-6 | Moyenne |
| 8 | /architecture |
A4 | Backend #8-9 | Haute |
| 9 | /endpoints |
B1 | Rien | Facile |
| 10 | /doc |
B2 | Rien | Facile |
| 11 | /schema |
B3 | Rien | Facile (SVG) |
| 12 | /secrets |
B4 | Rien | Facile |
| 13 | /o2switch |
B5 | Rien | Facile |
| 14 | /yolo |
C1 | Rien (appel direct) | Moyenne |
Lot 1 — Quick wins (pas de nouveau backend) Pages B1-B5 + C1 + A7 + A6 + A8 = 9 pages → Shortlinks, Models, Syncthing, Endpoints, Doc, Schema, Secrets, O2switch, YOLO
Lot 2 — Alerts + RAIDZ (enrichir backend existant) Backend: enrichir ZFS, créer /api/alerts Pages: A1 (raidz), A2 (alerts) = 2 pages
Lot 3 — Nouveaux collecteurs Backend: crons, mounts, proxmox VMs Pages: A3 (crons), A5 (montages), A4 (architecture) = 3 pages
Total final : 7 existantes + 14 nouvelles = 21 pages
La navbar actuelle a 7 onglets. Avec 21 pages, il faudra un menu dropdown ou des sous-catégories :
Dashboard | Services | AI ▼ | Docker | GitLab | Infra ▼ | Claude | Tools ▼ | Docs ▼
| | | |
Models RAIDZ Shortlinks Endpoints
YOLO Crons YOLO Doc
Montages Schema
Architecture Secrets
Alerts O2switch
Syncthing