Tipologia
Gestionale
Cliente
Wiva Energy S
Stato
In sviluppo
Descrizione
Backend Laravel modulare per la gestione di hardware IoT e l’acquisizione/analisi di misurazioni energetiche.
Wiva Energy S (Backend Hardware & Measurements) costituisce il cuore logico, computazionale e transazionale dell'intero ecosistema aziendale incentrato sull'efficienza energetica e sul monitoraggio delle utility. Progettato con un approccio API-first e un'architettura Headless, l'applicativo funge da gateway di ricezione per i dati inviati dai dispositivi intelligenti dislocati negli impianti industriali e civili. Il backend si fa carico di validare l'integrità dei flussi M2M (Machine-to-Machine), mappare l'alberatura dell'infrastruttura hardware, archiviare in modo strutturato le letture continue ed eseguire in tempo reale i calcoli statistici necessari ad alimentare i grafici e le dashboard dei client front-end.
Finalità
Sistema “Hardware & Measurements Management System” per registrare dispositivi (Arduino come hardware padre, misuratori come figli per energia elettrica, acqua e gas) e raccogliere le relative letture. Espone API per CRUD hardware, ingestione dati da sistemi esterni e analytics. Settore: monitoraggio energetico/utility per l’ecosistema Wiva.
Tecnologie
- Laravel 12, PHP 8.2+
- PostgreSQL (aggregazioni temporali con DATE_TRUNC)
- Laravel Sanctum (auth API), Spatie Laravel Permission (ruoli amministratore/staff/utente)
- Architettura modulare (nwidart/laravel-modules), Vite per gli asset
Funzionalità principali
- CRUD hardware con gerarchia Arduino → misuratori (relazione 1:N) e file/immagini polimorfici
- API measurements: inserimento singolo, batch, ingestione pubblica con throttling da sistemi esterni
- Analytics: summary, ultime letture per identificatore, aggregazioni orarie/giornaliere/mensili, export CSV
- Gestione ruoli e permessi, dashboard letture con indicatori di qualità dei dati
Note
Correlato a `wivaenergy`: questo è il backend API/Laravel, mentre `wivaenergy` è il frontend Vue. Suffisso “S” probabilmente per distinguere la versione server. README di default GitLab; informazioni ricavate da `setup.md`.
Particolarità
Struttura a moduli isolati (Authentication, Clients, Files, Hardware, Images, Measurements, Users) generabili via `php artisan module:make`. Endpoint di ingestione pensati per ricevere dati direttamente dai dispositivi/PLC sul campo, con qualità dato, batch ID e IP sorgente tracciati.