Skip to content

Repository files navigation

NephroAssistant

NephroAssistant è un progetto open source per la raccolta strutturata di una visita nefrologica. La repository contiene l'architettura Phase 0, un'API Phase 1 per dati sintetici e una demo statica navigabile.

Avvertenza clinica: il software è uno strumento di supporto in sviluppo e non sostituisce il giudizio del medico. Le informazioni cliniche e prescrittive devono essere verificate dal professionista prima dell'utilizzo.

Apri la demo sintetica

Stato del progetto

  • prototipo di sviluppo, non validato per uso clinico;
  • DEMO_MODE=true è obbligatorio nella configurazione fornita;
  • nessun calcolo eGFR, diagnosi, alert clinico, codice SSN o suggerimento terapeutico è attivo;
  • nessun dato viene inviato a servizi AI o terze parti;
  • la demo GitHub Pages usa solo dati sintetici nel browser e non chiama il backend.

Funzioni disponibili

  • dashboard sintetica desktop-first;
  • percorso guidato di prima visita;
  • registrazione strutturata di pazienti pseudonimi, visite ed esami;
  • unità obbligatoria per i risultati numerici;
  • stato di verifica esplicito (pending, confirmed, rejected);
  • API REST documentata con OpenAPI;
  • audit applicativo per le mutazioni dell'API;
  • test automatici e controlli sui secret.

Avvio locale

Richiede Python 3.12+ e Docker, oppure un ambiente Python locale.

cp .env.example .env
docker compose up --build

API: http://localhost:8000

OpenAPI: http://localhost:8000/docs

Demo statica: aprire demo/index.html oppure eseguire python -m http.server 3000 -d demo.

Senza Docker:

cd backend
python -m venv .venv
source .venv/bin/activate
pip install -e '.[dev]'
pytest
uvicorn app.main:app --reload

Architettura

Il backend nasce come monolite modulare FastAPI. PostgreSQL è previsto come fonte autorevole; SQLite è ammesso esclusivamente nello sviluppo locale. Il futuro motore nefrologico deterministico rimane separato dalla generazione testuale e dalle fonti amministrative.

flowchart TB
    UI[Interfaccia clinica] --> API[API FastAPI]
    API --> CORE[Cartella clinica Phase 1]
    API -. fasi future .-> ENGINE[Motore deterministico]
    API -. fasi future .-> SOURCES[Registro fonti SSN]
    CORE --> DB[(PostgreSQL)]
    ENGINE --> KNOW[Conoscenza versionata]
    SOURCES --> OFFICIAL[Fonti istituzionali]
Loading

Approfondimenti: docs/architecture.md, docs/clinical-safety.md, docs/privacy.md e docs/regulatory-considerations.md.

Limiti non negoziabili

  • nessun dato clinico o amministrativo inventato;
  • nessuna unità assunta;
  • nessun LLM usato per i calcoli;
  • nessuna diagnosi o prescrizione automatica;
  • nessuna nuova linea guida applicata senza revisione medica;
  • nessun dato sanitario reale nella demo, nei test o nelle issue.

Fonti iniziali

Le fonti sono punti di partenza e non vengono considerate indefinitamente aggiornate. Ogni futura regola deve registrare versione, data di verifica e provenienza.

Licenza

Apache-2.0. La licenza non concede automaticamente diritti d'uso su terminologie cliniche, standard o dataset di terzi.

About

Assistente nefrologico modulare e safety-first — demo sintetica Phase 0/1

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages