App Medical Triage Lab e Analisi Referti: valuta sintomi ed esami del sangue con un motore clinico intelligente

Piattaforma full-stack per triage relazionale e interpretazione di esami ematochimici: backend in Node.js, database MySQL, web app in glassmorphism e app Android nativa in Kotlin.

Medical Triage Lab

L’applicazione Medical è un sistema full-stack dedicato al settore sanitario, progettato per offrire due funzionalità distinte ma complementari: un triage medico relazionale intelligente per la valutazione dei sintomi e un motore di analisi dei referti ematochimici per l’interpretazione guidata degli esami del sangue.

La piattaforma consente agli utenti di cercare un sintomo (ad esempio “mal di testa”, “dolore al petto”, “fitta al cuore”), rispondere a una serie sequenziale di domande mirate e ricevere una valutazione del rischio clinico suddivisa in livelli (Emergenza, Alto, Medio, Basso), con consigli pratici su come comportarsi. Parallelamente, il sistema permette di inserire i parametri di laboratorio (emocromo, colesterolo, acido urico, ecc.), confrontarli con i range di riferimento e visualizzare in modo chiaro le anomalie, accompagnate da spiegazioni cliniche e indicazioni utili.

A cosa serve l’applicazione: Medical Triage Lab e analisi dei referti

L’applicazione nasce per rispondere a due esigenze concrete nel percorso di cura e autovalutazione:

  • Guidare l’utente nella valutazione iniziale dei sintomi, aiutandolo a capire quando è necessario rivolgersi subito a un pronto soccorso, quando è opportuno un consulto medico rapido e quando invece la situazione può essere gestita con monitoraggio e consigli di base.
  • Supportare pazienti e operatori nell’interpretazione degli esami del sangue, evidenziando valori fuori range, spiegandone il significato clinico e suggerendo comportamenti o approfondimenti da discutere con il proprio medico.

Il sistema non sostituisce il parere medico, ma funge da strumento di orientamento preliminare, riducendo incertezze e aiutando a prioritizzare gli interventi in base alla gravità percepita.

Triage Medico Relazionale Intelligente

Il modulo di triage si basa su un albero decisionale che parte dalla ricerca di un sintomo e prosegue con domande sequenziali a risposta chiusa (Sì/No o scelte multiple).

Il flusso tipico è il seguente:

  • L’utente cerca un sintomo (ad esempio “fitta al cuore”, “dolore al petto”, “mal di testa forte”).
  • Il backend restituisce l’albero di domande associato a quel sintomo.
  • L’utente risponde in ordine sequenziale.
  • Se una risposta attiva una domanda di emergenza (flag is_emergency_question), il sistema interrompe immediatamente il percorso e mostra il livello Emergenza, consigliando di recarsi in pronto soccorso o chiamare i soccorsi.
  • In assenza di emergenze, il motore decisionale calcola un punteggio di rischio e restituisce una classificazione in:
    • Emergenza
    • Rischio Alto
    • Rischio Medio
    • Rischio Basso
    accompagnata da un consiglio clinico coerente (es. “contatta il medico entro 24 ore”, “monitora i sintomi”, “richiedi visita specialistica”, ecc.).

Ogni sessione viene registrata in forma anonima nel database per finalità di audit analytics, consentendo di analizzare pattern di utilizzo, sintomi più cercati e distribuzione dei livelli di rischio nel tempo.

Analisi dei Referti Ematochimici (Esami del Sangue)

Il secondo modulo è dedicato all’analisi automatica dei referti di laboratorio. L’utente inserisce i valori dei parametri ematici (ad esempio emoglobina, globuli bianchi, colesterolo totale, LDL, HDL, trigliceridi, acido urico, creatinina, ecc.) e il sistema:

  • confronta ogni valore con i range di riferimento definiti nell’anagrafica parametri;
  • segnala visivamente i valori sotto norma, nella norma o sopra norma;
  • fornisce una spiegazione clinica sintetica del parametro (a cosa serve, cosa indica quando è alterato);
  • suggerisce consigli pratici (alimentari, comportamentali o di approfondimento) da discutere con il medico curante.

Il motore è deterministico: le regole di valutazione sono predefinite e basate su linee guida e intervalli di riferimento standard, garantendo coerenza e ripetibilità dei risultati.

Stack tecnologico: architettura moderna e modulare

Il progetto adotta un’architettura modulare e distribuita, con separazione netta tra client (web e mobile), backend centralizzato e database relazionale.

Backend (Logica e API RESTful)

Il cuore della logica di calcolo – sia per l’albero decisionale del triage sia per il motore dei referti – è centralizzato nel backend.

  • Linguaggio / Runtime: Node.js
  • Framework: Express.js

Funzionalità principali:

  • API REST per la ricerca full-text/fuzzy dei sintomi;
  • Gestione della somministrazione delle domande e raccolta delle risposte;
  • Calcolo della valutazione del rischio clinico;
  • Analisi dei parametri di laboratorio e confronto con i range;
  • Registrazione anonima delle sessioni per audit analytics e reportistica.

Questa centralizzazione garantisce coerenza tra web app e app mobile, oltre a semplificare aggiornamenti delle regole cliniche e manutenzione del motore decisionale.

Database (Persistenza dei Dati)

  • RDBMS: MySQL (compatibile anche con MariaDB).

Architettura:

  • Tabelle per gli alberi decisionali dei sintomi (sintomi → domande → esiti → livelli di rischio);
  • Anagrafica completa dei parametri ematochimici (nome, unità di misura, range di riferimento per sesso/età, spiegazioni cliniche);
  • Tabelle per le sessioni anonime e i log di utilizzo (senza dati personali identificativi).

Le connessioni al database sono gestite in modo efficiente tramite Connection Pool (mysql2/promise), per garantire prestazioni e scalabilità anche con un numero elevato di richieste concurrenti.

Frontend Web (SPA Triage)

La web app è un’applicazione a singola pagina (SPA) dedicata principalmente al triage medico.

  • Linguaggi: HTML5, CSS3, Vanilla JavaScript.
  • Design: interfaccia moderna, experience fluida e contemporanea.

Caratteristiche:

  • Comunicazione dinamica con le API REST del backend;
  • Ricerca sintomi in tempo reale;
  • Navigazione sequenziale nell’albero decisionale;
  • Visualizzazione chiara del livello di rischio e dei consigli associati.

L’assenza di framework JavaScript pesanti mantiene il codice leggero, veloce e facilmente manutenibile.

App Mobile (Android)

L’app mobile è sviluppata in ambiente nativo Android, per garantire massime prestazioni e integrazione con il sistema operativo.

  • Linguaggio: Kotlin
  • Build system: Gradle (script in build.gradle.kts).

Architettura:

  • Supporto a moderne architetture Android, tra cui Jetpack Compose per la costruzione di interfacce utente dichiarative e reattive;
  • Comunicazione con il backend tramite API REST;
  • Interfacce dedicate per triage sintomi e analisi referti, ottimizzate per schermi touch.

Questa scelta consente di offrire un’esperienza utente coerente con gli standard Android, sfruttando al contempo la logica clinica centralizzata nel backend.

Flusso di lavoro esempio: triage di un sintomo cardiaco

Per comprendere meglio il funzionamento, ecco un esempio concreto di utilizzo del modulo di triage:

  • Input utente: un utente cerca “fitta al cuore” nella web app o nell’app Android.
  • Interrogazione backend: il server cerca i sintomi compatibili e restituisce l’albero di domande associato.
  • Risposte sequenziali: l’utente risponde con Sì/No a domande mirate (es. “Il dolore si irradia al braccio sinistro?”, “Hai sudorazione fredda?”, “Il dolore è comparso sotto sforzo?”).
  • Interruzione rapida: se una risposta attiva una domanda contrassegnata come is_emergency_question, il sistema interrompe immediatamente il flusso e mostra:
    • Codice: Emergenza
    • Consiglio: “Recati immediatamente in pronto soccorso o chiama il 118/112.”
  • Analitiche: il risultato (sintomo, risposte, livello di rischio) viene memorizzato in forma anonima nel database per future analisi (pattern di sintomi, frequenza di emergenze, ecc.).

Questo approccio garantisce che le situazioni potenzialmente critiche vengano identificate il prima possibile, riducendo il rischio di sottovalutazione.

Parole chiave e intento di ricerca

L’articolo è ottimizzato per intercettare ricerche come:

  • “app triage medico sintomi”
  • “applicazione analisi esami del sangue online”
  • “software valutazione rischio clinico”
  • “app interpretazione referti ematochimici”
  • “piattaforma triage relazionale Node.js MySQL”

Sicurezza, privacy e limiti dell’applicazione

L’applicazione è concepita come strumento di supporto informativo, non come dispositivo medico diagnostico né come sostituto del parere professionale.

Punti chiave da tenere presenti:

  • I risultati del triage e dell’analisi referti sono indicativi e basati su regole predefinite; non costituiscono diagnosi.
  • In caso di sintomi gravi o dubbi importanti, è sempre necessario rivolgersi a un medico o ai servizi di emergenza.
  • Le sessioni sono registrate in forma anonima, senza raccolta di dati personali identificativi, per tutelare la privacy degli utenti.
  • I range di riferimento e le regole cliniche devono essere periodicamente revisionati e aggiornati in base a linee guida e indicazioni di professionisti sanitari.

Questa impostazione rende l’applicazione adatta a contesti di orientamento preliminare, educazione sanitaria e supporto decisionale, sempre in affiancamento – e mai in sostituzione – al rapporto medico-paziente.

Visione del progetto: tecnologia al servizio della salute

Il progetto Medical nasce con l’obiettivo di mettere la tecnologia al servizio di una prima valutazione consapevole di sintomi ed esami, riducendo incertezze e aiutando utenti e operatori a prioritizzare gli interventi.

La piattaforma punta a:

  • offrire un’esperienza chiara, rapida e accessibile, sia da web sia da mobile;
  • fornire un motore decisionale trasparente e aggiornabile, basato su regole cliniche verificabili;
  • creare una base dati anonima per analisi aggregate, utile a comprendere pattern di sintomi e bisogni informativi ricorrenti;
  • mantenere un approccio etico e responsabile, sottolineando i limiti dello strumento e l’importanza del confronto con professionisti sanitari.

In un contesto dove l’accesso alle informazioni sanitarie è sempre più digitale, l’app si propone come ponte tra utente e sistema sanitario, favorendo una prima orientamento più informato e strutturato.

(presto app android)

Risorse del Progetto