Architettura¶
Questa sezione descrive l’architettura del progetto Trentino Living Atlas.
Panoramica¶
Il progetto è un’applicazione monolitica Django con un’architettura modulare. Le diverse funzionalità sono separate in app Django indipendenti, il che facilita la manutenzione e l’estendibilità.
App principali¶
Il progetto è composto dalle seguenti app Django principali:
`areas`: Gestisce le aree geografiche, come comuni, province e regioni.
`biodiv`: App principale per la gestione delle osservazioni sulla biodiversità.
`contact`: Gestisce i moduli di contatto.
`gallery`: Fornisce una galleria di immagini e documenti.
`map_layers`: Gestisce i layer della mappa.
`pages`: App Wagtail per la gestione dei contenuti, come le pagine del sito.
`species`: Gestisce le specie e le loro informazioni.
`taxonomy`: Gestisce la tassonomia delle specie.
Tecnologie¶
Backend: Django, Django REST Framework,
Frontend: Wagtail CMS, Leaflet, Foundation
Database: PostgreSQL con PostGIS
Caching: Redis
Task in background: Celery
Flusso di dati¶
I dati vengono raccolti da varie fonti, come osservazioni sul campo, database esterni e caricamenti manuali. Questi dati vengono quindi elaborati e archiviati nel database PostgreSQL. L’API REST espone questi dati a varie applicazioni client, come l’applicazione web principale e le applicazioni mobili.