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.