Libreria di marchio

Un sistema, ogni frame.

Colori, font, griglia, logo, componenti e tono di voce di fabiostaiano.it, del Lab (i miei esperimenti), della newsletter e dei social. È la libreria del mio marchio: i valori sono scritti nelle tabelle. In fondo trovi un kit vuoto da scaricare per costruire il tuo.

Prima di tutto

Regole

Otto regole che non si rompono.

  1. Solo scuroSito, social e promo: un tema solo, scuro, senza selettore. Si rispettano il contrasto alto e i colori forzati del sistema.
  2. Un solo accentoIl blu oppure il giallo, mai tutti e due in primo piano.
  3. Colore nelle parti visiveMai nel testo piccolo. Testo e grafica non condividono il colore.
  4. Il più grande è il più contrastatoTitolo bianco, secondario grigio, etichette mono più piccole.
  5. L’avatar firma, la foto presentaIl volto del marchio è il logo-avatar. La foto vera compare solo nel Chi sono, dove Fabio si presenta.
  6. Accessibile per regolaContrasto 4,5:1, aree da 44 px, movimento ridotto rispettato.
  7. Centrato sui glifiIl testo in una tessera si centra sul disegno delle lettere.
  8. Leggero e vettoriale primaSVG per logo, icone e grafiche. Raster solo per foto e copertine, font WOFF2, niente script di terze parti.
Fondamenta

Colore

Neutri freddi, un blu, colori solo per le figure.

Blu del marchio
#2B2BEA
logo · newsletter · ombra toast

Tema scuro · l’unico

paper#0F1015sfondo pagina
wash#1B1D25superfici
line#2C2F39bordi
muted#A0A4B0testo secondario
ink#ECEDF2testo e titoli
link#8F8FFFlink e focus

Solo per le parti visive · mai per il testo piccolo

yellow#FFC53Dtrofei, parola chiave
lilac#8F8FFFchip, illustrazioni
coral#FF7A66chip, illustrazioni
green#2DD4A7chip, illustrazioni
pink#FF6EB4aloni, illustrazioni

Contrasti misurati

CoppiaContrastoUso
ink su paper16,25:1testo principale
ink su wash14,38:1testo nelle schede e nei pannelli
muted su paper7,63:1testo secondario ed etichette
muted su wash6,75:1etichette nelle schede
link su paper6,82:1link e contorno del focus
bianco su blu7,97:1newsletter e tessera del logo
line2 su paper2,29:1solo nei disegni, mai per un bordo che serve a capire

Soglie: 4,5:1 per il testo, 3:1 per i titoli grandi e per i bordi che servono a capire. Calcolati con la formula WCAG 2.1 sui valori del tema.

Fondamenta

Tipografia

Larga per gridare, stretta per spiegare.

Anybody 900 · wdth 140Lab
Anybody 800 · wdth 100Ho rifatto il mio sito.
Instrument Sans 400Progetto prodotti digitali e insegno a progettarli con l’AI. Ogni metodo che provo diventa una lezione.
Martian Mono 500Esperimento 01 · fabiostaiano.it · 1/4

Scala

RuoloTokenFont e pesoMisuraInterlineaUso
Titolo di paginafluidoAnybody 800 · 900 in homefluida, clamp in DESIGN.md0,86–0,95uno per pagina, in cima
Titolo di sezionefluidoAnybody 800fluida, clamp in DESIGN.md0,98apre ogni sezione
Titolo di scheda--fs-cardAnybody 700 · wdth 9626 px1,1schede, ruoli, gruppi
Titolo piccolo--fs-title-sAnybody 70020 px1,2regole, voci, titoli dei dialog
AttaccofluidoInstrument Sans 40016–22 px1,5sotto un titolo, entro 42 caratteri
Testo--fs-textInstrument Sans 400 · 60018 px1,6testo corrente, entro 64 caratteri
Interfaccia--fs-uiInstrument Sans 400 · 60016 px1,5bottoni, campi, menu, schede
Nota--fs-noteInstrument Sans 40014 px1,5didascalie, note, footer
Etichetta--fs-labelMartian Mono 500 · maiuscolo12 px1,5sopra i titoli, nei tag, il codice
Misura nei disegniMartian Mono 50010 px1solo dentro le illustrazioni

Il resto del testo usa le sei misure fisse, con il loro token. Restano fuori, dichiarati: il nome in barra (18 px, parte del logo), le misure nei disegni (10 px), i campioni dentro le pagine, il blocco del libro (con le sue misure) e i giochi nascosti. Nessun testo dell’interfaccia sotto i 12 px.

Fondamenta

Griglia e spazi

Una griglia, multipli di 4.

Griglia

  1. Un contenitore, un bordo.Al massimo 1120 px, con 16-56 px ai lati. La barra va da bordo a bordo, contenuto e footer partono dallo stesso margine.
  2. Tre punti di rottura.560, 760 e 1100 px. Un valore diverso vale per un solo componente e sta accanto a lui.
  3. Lo spazio si conta.Fra le schede di una griglia 14-20 px. Una sezione respira almeno 48 px sopra e sotto.

Spaziature · multipli di 4

--s-14
--s-28
--s-312
--s-416fra le schede di una griglia
--s-524
--s-632
--s-748sopra e sotto una sezione
--s-864
--s-996
--s-10128
Fondamenta

Forme e profondità

Angoli vivi, un’ombra sola.

Raggi

--r-ui0Bottoni, campi, toast e dialog. L’interfaccia è squadrata.
--r-pill999 pxTag e chip, la pillola mono.
--r-tile20%Tessere icona: logo e trofei.
--r-window18 pxFinestre e mockup, solo nelle grafiche social.

Ombre · una sola, dura e blu

--shadow-hard6 px · bluToast, menu della barra e schede al passaggio. Sempre nel blu del marchio, mai in quello dei link.
--shadow-dialog10 px · bluDialog. La stessa ombra, più lontana.
--shadow-softMorbida · nero al 50%Solo nelle grafiche social e sulle tessere del logo.

Livelli

z-index: 50BarraIn alto, sopra la pagina.
z-index: 60SkiplinkSopra la barra, quando prende il focus.
z-index: 80ToastSopra tutto il resto della pagina.
showModal()DialogNel livello del browser, senza z-index.
Fondamenta

Movimento

Un gesto, una scena.

  1. Veloce all’inizio, morbida alla fine.Una curva sola per tutto: parte svelta e si posa piano, come una mano che appoggia una scheda.
  2. Tre tempi.0,2 s per bordi e colori, 0,35 s per le dissolvenze, 0,5 s per i disegni. Con il movimento ridotto si fermano.
  3. Si muove solo il disegno.Al passaggio, al focus e, su touch, a metà schermo. Le altre schede si attenuano a 0,4.
Interfaccia

Componenti

Squadrati nell’interfaccia, tondi nelle figure.

Bottoni · raggio 0Leggi la storiaSalta la storia
Sezione newsletterFuori Frame
Toast del trofeo · ombra dura blu
Trofeo sbloccatoPrimo frame
Menu della barra · ombra dura blu
Gratis per teFuori FrameToolsDesign system
LinguaIT · EN
Trofei · tessere al 20%
???
Tag · pillola mono
designAIcodice

Stati del bottone

Leggi la storiaRiposoPieno, angoli vivi.
Leggi la storiaPassaggioOpacità 0,86.
Leggi la storiaFocusContorno 2 px --link, a 3 px.
DisabilitatoOpacità 0,5 e una frase che dice perché.

Bottone: anatomia e varianti

Leggi la storiaAnatomiaInstrument Sans 600, 16 px. Spazio interno 14 × 24 px, alto almeno 44 px. Bordo 1,5 px, raggio 0.
Leggi la storiaPienoFondo --ink, testo --paper. Uno per blocco: l’azione principale.
Salta la storiaVuotoTrasparente, testo --ink, bordo --muted che passa a --ink al passaggio. L’alternativa accanto al pieno.
IscrivitiSul bluNella sezione newsletter il pieno diventa bianco con il testo blu.
<button class="btn" type="button">Leggi la storia</button>
<a class="btn ghost" href="#lavoro">Salta la storia</a>

Campo: stati

nome@studio.itIscrivitiRiposoBordo 1,5 px, segnaposto in --muted pieno.
nome@stuIscrivitiFocusContorno 2 px --link, a 2 px.
nome@studioIscriviti

Scrivi un indirizzo email completo, tipo nome@studio.it.

ErroreContorno 3 px e una frase sotto che dice cosa fare. Nessun rosso.
nome@studio.itIscriviti

Un attimo…

In attesaIl bottone si disabilita finché arriva la risposta.

Sei dentro.

FattoIl campo lascia il posto alla conferma e al passo successivo.

Alto almeno 44 px come il bottone accanto; sul telefono tutti e due a tutta larghezza. L’etichetta è collegata al campo con for e id. L’errore mette aria-invalid="true" sul campo e la frase in un paragrafo con role="status", così lo screen reader la legge.

<form class="ff-form" novalidate>
  <label for="email">La tua email</label>
  <input id="email" name="email" type="email" autocomplete="email" required aria-describedby="nota">
  <button type="submit">Iscriviti</button>
  <p id="nota" role="status"></p>
</form>

Il kit è nella pagina del design system.

Nel testoColore --link e sottolineato.

ToolsDesign system

Nel menu e nel footer--ink, peso 600; al passaggio --link e sottolineato a 4 px. Area alta 44 px.

/Tools/Mockup 3D

BricioleMono 12 px maiuscolo in --muted; l’ultima voce è la pagina e non è un link.

Focus: contorno 2 px --link a 2 px, come ogni altro elemento.

Quando usare cosa

Trofeo sbloccatoPrimo frameToastUna notizia breve che non chiede niente. Non interrompe e non porta mai un errore.
×DialogQuando serve leggere o scegliere prima di andare avanti. Si chiude con il × o con Esc.
nome@studioScrivi un indirizzo email completo.Messaggio sotto il campoErrori e conferme di un modulo, dove l’occhio già sta.
404Torna alla home →Pagina 404Quando l’indirizzo non esiste: dice cosa è successo e dà la strada per tornare.

Icone

Misura16 px accanto al testo, 20 px nelle tessere, 24 px da sole, su una griglia da 24. Tratto 1,5 px in currentColor.
Chiudi× in un quadrato da 44 px, bordo 1,5 px --line. Il nome va in aria-label.
Leggi la guida →FrecceCaratteri (← →) accanto al testo, non icone.

L’SVG ha sempre aria-hidden="true". Nessun set esterno: poche icone disegnate qui.

<button type="button" aria-label="Chiudi">×</button>
<svg viewBox="0 0 24 24" width="24" height="24" fill="none"
     stroke="currentColor" stroke-width="1.5" aria-hidden="true">…</svg>

Barra e footer

BarraAlta 58 px (--top-h), da bordo a bordo con --gutter ai lati, fondo --paper all’86% con sfocatura, livello --z-bar. Logo 26×28 px e nome in Anybody 700 18 px; briciole mono 12 px; menu da 32 px con area da 44.
FooterSopra 56–96 px, filo --line; poi la riga della porta e una griglia di tre colonne (una sul telefono) aperta dal filo forte --ink. Titoletti mono 12 px --muted, link --ink 600 alti 44 px, email mono 14 px con Copia.
Da dove arrivanoUna funzione sola per tutte le pagine: bar() e footer() in componenti.py, CSS in componenti.css. La home usa lo stesso footer; la sua barra è la versione animata, con le stesse misure.
import componenti as C
C.bar('it', crumbs=[('Tools', '/tools/'), ('Mockup 3D', None)])
C.footer('it')

Tema

Solo scuroUn tema solo su ogni pagina: niente chiaro, niente modalità automatica, niente selettore nel menu.
Primo disegnoOgni pagina dichiara color-scheme dark e theme-color #0F1015: barra del browser e controlli nativi scuri da subito.
Preferenze del sistemaSolo per chi le attiva. Con «Aumenta contrasto» il testo secondario e i bordi si fanno più marcati; con il contrasto elevato di Windows i colori li sceglie il sistema e i disegni sul palco restano come sono.
Pagine da leggereNumeri della newsletter e privacy stanno in un article: la modalità lettura del browser li apre con i suoi colori, anche su chiaro.

Strumenti

A schermo interoNiente footer: la barra in alto e lo strumento. Stessi token e stesso menu del sito.
ComandiIl “?” in alto a sinistra apre i comandi; l’ultima riga è “Leggi la guida”.
GuidaL’ultimo cassetto: cosa fa, come si usa, domande. Come correggere un errore sta solo nei risultati.
CassettiSul telefono se ne apre uno alla volta.
Marchio

Illustrazioni

Un’idea, un protagonista blu.

Sì e no

  1. Oggetti del mestiere, non icone.Una selezione con le maniglie dice design. Una lampadina dice qualunque cosa.
  2. Persone: il logo o un cursore.Il logo-avatar su tessera blu e i cursori grigi. Mai omini colorati.
  3. Un protagonista, a tinta piatta.Un solo blu, il resto grigio. Niente arcobaleni, sfumature e ombre morbide.

Le otto regole

  1. 01Sempre sul palco.Il disegno sta in un riquadro scuro con una griglia di puntini ogni 12 px. In alto a sinistra un numero mono, quando i disegni sono in serie.
  2. 02Un’idea, pochi oggetti grandi.Il disegno racconta una cosa sola con pochi oggetti che riempiono il riquadro. Niente scene, niente decorazioni di contorno.
  3. 03Un protagonista blu, il resto grigio.Il blu va a un solo oggetto, quello che fa il gesto. Tutto il resto sta nei grigi del tema scuro. Un colore delle parti visive può prendere il posto del blu, mai affiancarlo.
  4. 04Oggetti del mestiere, non icone.Si disegna con quello che vede chi progetta: glifi veri, selezioni tratteggiate con le maniglie, guide, curve di Bézier, cursori, tessere, misure. Niente icone di repertorio come lampadine, ingranaggi, razzi o fumetti.
  5. 05Le persone sono il logo o un cursore.Fabio è il logo-avatar bianco su tessera blu, oppure un cursore con il nome. Gli altri sono cursori grigi. Mai omini o figure generiche.
  6. 06Forme piene, angoli vivi.Rettangoli e cerchi a tinta piatta, senza sfumature né ombre. Il tratto serve solo a guide, tratteggi e curve. Il raggio resta a tessere e chip.
  7. 07Dentro, solo misure e nomi.Etichette mono maiuscole in grigio, come 44 PX, ×10 o 07 / 40, oppure un glifo grande in Anybody. Mai frasi: il disegno vale in ogni lingua.
  8. 08Il gesto racconta l’idea.Al passaggio il protagonista fa il gesto dell’idea, cresce, cade al suo posto, annuisce o preme, e il resto si attenua o si sposta. Un solo movimento in loop.
Marchio

Tono di voce

Corto, concreto, in prima persona.

  1. 01Parlo io, a te.Prima persona singolare, il lettore si chiama “tu”. Niente “noi” da azienda, niente “l’utente”.

    «Scorri e ti racconto come ci sono arrivato.»

  2. 02Frasi corte, un’idea per frase.I titoli sono di poche parole e finiscono con il punto.

    «Tabelle.» «Il metodo, dal vivo.»

  3. 03Due tempi.La prima frase apre, la seconda gira.

    «Gli strumenti cambiano. Il mestiere no.»

  4. 04Cose vere, non aggettivi.Nomi, numeri, oggetti: spacer.gif, dieci bottoni, trenta volte al secondo. Se una frase regge senza un aggettivo, l’aggettivo si toglie.

    «L’AI genera dieci bottoni in pochi secondi. Quanti reggono davvero?»

  5. 05Chi prova, non chi predica.Racconto cosa ho provato e cosa ha retto, anche quando non ha funzionato. L’AI genera, chi progetta decide. Niente promesse, niente entusiasmo di maniera.

    «L’AI genera e tu decidi.»

  6. 06Una battuta, poi si torna seri.Autoironia sul mestiere e sul passato, mai sul lettore. Al massimo una per blocco.

    «Il cliente vuole sempre il logo più grande.»

  7. 07Chiaro anche quando è noioso.Privacy, conferme ed errori dicono cosa succede e cosa fa il lettore, senza linguaggio legale.

    «Finché non confermi non ricevi nulla.»

  8. 08Il bottone dice cosa succede.Un verbo, al massimo due parole, rivolto al lettore. Mai “Clicca qui” o “Invia”.

    Iscriviti · Scrivimi · Avvisami · Scarica PNG

CosìNon così
ScrivimiContattaci
L’AI genera e tu decidi.L’AI rivoluziona il design!
Insegno dal 2016.15+ anni di esperienza
Scarica PNGClicca qui
Finché non confermi non ricevi nulla.L’utente riceverà una email di conferma.

Parole e punteggiatura

Canali

Grafiche social

4:5, figura in alto, testo a sinistra.

fabiostaiano.it1/4

Ho rifatto il mio sito.
Ci ho messo solo dieci anni.

Copertina: una sola parola chiave in giallo.

fabiostaiano.it2/4
??

Non è il solito portfolio.

È la mia storia da scorrere, con dei trofei nascosti.

Interna: titolo bianco in 2 righe, grigio sotto.

Marchio a parte

learnfigmanow.com

Designing and Prototyping Interfaces with Figma

Third edition · Packt

Get the book
navy#192E5Ffondo
indigo#282179fondo
accent#DB3716bottoni
text#2E2E2Etesto
paper#F5F5F5sfondo

Syne 800 e Open Sans, i personaggi della copertina. Un’identità a sé, che non si mescola con quella del sito.

File

Scarica il kit vuoto

Mettere in piedi questo sistema mi ha preso parecchio lavoro. Il kit è la parte che vale per chiunque, senza il mio marchio: le regole di base già scritte, i posti per le tue scelte e token neutri che funzionano subito. Lo prendi gratis e parti da qui, non da zero.

A cosa ti serve

Con un assistente AIDai DESIGN.md a Claude, ChatGPT o Cursor insieme al tuo sito: compila i posti vuoti e da lì in poi disegna e scrive interfacce che seguono le tue regole, invece di inventarle.
In Figmatokens.json diventa le variabili del file, in chiaro e in scuro. Le regole sono la base per le specifiche dei componenti.
Nel codicetokens.css va nel progetto: le pagine usano i nomi, il tema cambia i valori.
Con il teamUn file solo che dice cosa si fa e perché. Quando qualcuno chiede «di che colore è il bottone?», la risposta è lì.

Cosa contiene

DESIGN.mdOtto regole di base e i posti da riempire. Cinque sono le regole neutre di questa pagina, senza il mio marchio; tre sono di metodo (focus, temi dagli stessi token, un valore in due posti diventa un token).
tokens.css · tokens.jsonNeutri in chiaro e in scuro, un accento segnaposto.

Licenza CC BY 4.0: usalo e modificalo come vuoi, anche al lavoro e per i clienti, citando fabiostaiano.it. Vale per il kit: logo, illustrazioni e il resto del mio marchio restano miei. I font che uso sono gratuiti su Google Fonts con licenza OFL, ecco il testo per ognuno: Anybody · Instrument Sans · Martian Mono.

← fabiostaiano.it · Versione del 20 ottobre 2026