Vai al contenuto principale
Padova Attiva · Design system
Versione iniziale

Un linguaggio pubblico, chiaro e affidabile.

Fondamenti e componenti dell’interfaccia Padova Attiva, costruiti per rendere servizi e informazioni comprensibili, riconoscibili e accessibili.

01

Chiarezza prima di tutto

Contenuti, gerarchie e azioni devono essere comprensibili anche fuori dal loro contesto.

02

Accessibilità nativa

Semantica HTML, tastiera e focus sono requisiti di progetto, non rifiniture finali.

03

Coerenza operativa

Token e componenti condivisi riducono variazioni e comportamenti inattesi.

Fondamenti 01

Colore con responsabilità

Il blu istituzionale guida le azioni e l’orientamento. I colori di stato comunicano sempre insieme a testo o icone, mai da soli.

Aa

Primary

#0B3EE3

bg-primary
Aa

Accent

#0059B3

bg-accent
Aa

Background

Superficie pagina

bg-background
Aa

Card

Superficie contenuti

bg-card
Aa

Success

Esito positivo

bg-success-background
Aa

Destructive

Errore o azione critica

bg-destructive

Fondamenti 02

Una voce leggibile

Titillium Web è il carattere primario. La gerarchia combina pesi netti, righe ariose e misure che mantengono leggibilità e reflow.

Aa

Titillium Web

Display · 48/49

Servizi vicini alle persone

Titolo · 30/36

Informazioni facili da trovare

Corpo · 18/32

Una misura confortevole e una lunghezza controllata aiutano la lettura di istruzioni e contenuti amministrativi.

Interfaccia · 14/20

Etichette persistenti e azioni esplicite

Fondamenti 03

Forma e profondità misurate

Bordi, raggi e ombre distinguono livelli e gruppi senza trasformare la pagina in una collezione di contenitori.

Raggio

Raggio base: 10 px

Bordo

Separazione discreta delle superfici

Ombra

Solo per elementi sollevati

Fondamenti 04

Icone semplici, significato esplicito

Lucide offre una grammatica coerente. Le icone decorative sono nascoste alle tecnologie assistive; quelle interattive hanno sempre un nome accessibile.

Interfaccia 01

Componenti condivisi

Le primitive riutilizzabili espongono varianti prevedibili e stati coerenti. Qui sono renderizzati i componenti reali del progetto.

Pulsanti

TSX
<Button variant="default">Salva</Button>
<Button variant="outline">Annulla</Button>

Link con aspetto di pulsante

Vai ai pattern applicativi
TSX
<ButtonLink href="/servizi" variant="default">
  Vai ai servizi
</ButtonLink>

Badge

PredefinitoSecondarioCompletatoErroreBozza

Dialog

Popover

Card

Richiedi assistenza

Invia una richiesta all’ufficio competente.

Disponibile online

Caricamento

Interfaccia 02

Tabelle e paginazione

Dati leggibili, intestazioni associate e controlli espliciti. Il riordino tramite trascinamento ha sempre un’alternativa completa da tastiera.

Tabella

Elenco dei servizi comunali
ServizioUfficioStato
Cambio di residenzaAnagrafeAttivo
Occupazione suolo pubblicoCommercioIn revisione
Iscrizione mensa scolasticaIstruzioneAttivo
TSX
const columns: TableColumn<Service>[] = [
  { key: "name", header: "Servizio", cell: (item) => item.name },
  { key: "office", header: "Ufficio", cell: (item) => item.office },
];

<Table caption="Elenco dei servizi" columns={columns} data={services} />

Tabella riordinabile

Trascina la maniglia oppure usa i pulsanti su e giù per cambiare l’ordine.

Priorità dei servizi comunali
OrdineServizioUfficioStato
Cambio di residenzaAnagrafeAttivo
Occupazione suolo pubblicoCommercioIn revisione
Iscrizione mensa scolasticaIstruzioneAttivo
TSX
<SortableTable
  caption="Priorità dei servizi"
  columns={columns}
  data={services}
  onSorted={setServices}
/>

Paginazione

TSX
<Pagination
  page={page}
  pageSize={pageSize}
  totalItems={87}
  onPageChange={setPage}
  onPageSizeChange={(size) => {
    setPageSize(size);
    setPage(0);
  }}
/>

Interfaccia 03

Caricamento file

La selezione nativa resta sempre disponibile. L’area drag and drop aggiunge comodità senza diventare l’unico modo per allegare un documento.

Input file semplice

PDF, JPG o PNG. Dimensione massima 10 MB.

TSX
<FileInput
  label="Documento di identità"
  name="identityDocument"
  accept=".pdf,.jpg,.jpeg,.png"
  helpText="PDF, JPG o PNG. Dimensione massima 10 MB."
/>

Area drag and drop

Trascina i file in quest’area

oppure

Trascina i file oppure usa il pulsante di selezione.

TSX
<FileDropzone
  label="Allegati"
  name="attachments"
  accept=".pdf,.jpg,.jpeg,.png"
  multiple
  helpText="Trascina i file oppure usa il pulsante di selezione."
  onFilesSelected={setFiles}
/>

Interfaccia 04

Stati e feedback

Ogni cambiamento importante è espresso con linguaggio comprensibile, semantica adeguata e una gerarchia visiva proporzionata.

Compilazione pratica65%
x

Interfaccia 05

Form leggibili e correggibili

Le label restano visibili, le istruzioni precedono l’errore e ogni relazione è espressa anche nel markup.

Come riportato sul documento di identità.

Ricevi una notifica quando cambia lo stato.

Regole 01

Accessibilità incorporata

La baseline è WCAG 2.1 AA; WCAG 2.2 AA è l’obiettivo ingegneristico. La conformità richiede verifiche sul prodotto rilasciato.

Un solo main e una gerarchia di titoli logica

Navigazione completa da tastiera e focus sempre visibile

Contrasto verificato in ogni stato del componente

Label, aiuti ed errori associati programmaticamente

Reflow fino al 400% senza perdita di informazioni

Movimento non essenziale ridotto su preferenza dell’utente

Regole 02

Pattern applicativi

Le pagine combinano pochi elementi stabili: contesto, azione principale, stato e possibilità di recupero.

Servizio

Avvia una richiesta

Spiega subito a chi è rivolto il servizio, cosa serve e quanto tempo richiede.

Passaggio 2 di 3

Controlla i dati

Mostra avanzamento, riepilogo e una via chiara per correggere prima dell’invio.