<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DESIGN.md - Web Design | Creazione Siti Internet</title>
	<atom:link href="https://www.mrtux.it/tag/design-md/feed" rel="self" type="application/rss+xml" />
	<link>https://www.mrtux.it</link>
	<description>Sviluppo Siti Web - Assistenza WordPress</description>
	<lastBuildDate>Mon, 18 May 2026 10:57:00 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.1</generator>

<image>
	<url>https://www.mrtux.it/wp-content/uploads/2022/06/favicon-150x150.png</url>
	<title>DESIGN.md - Web Design | Creazione Siti Internet</title>
	<link>https://www.mrtux.it</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Progettare un tema WordPress completo con DESIGN.md, Google Stitch e prompt AI</title>
		<link>https://www.mrtux.it/progettare-tema-wordpress-design-md-google-stitch-prompt-ai</link>
					<comments>https://www.mrtux.it/progettare-tema-wordpress-design-md-google-stitch-prompt-ai#respond</comments>
		
		<dc:creator><![CDATA[Emilio Petrozzi]]></dc:creator>
		<pubDate>Mon, 18 May 2026 09:22:57 +0000</pubDate>
				<category><![CDATA[Intelligenza artificiale]]></category>
		<category><![CDATA[sviluppo-web]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[ai]]></category>
		<category><![CDATA[DESIGN.md]]></category>
		<category><![CDATA[Google Stitch]]></category>
		<category><![CDATA[theme.json]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.mrtux.it/progettare-tema-wordpress-design-md-google-stitch-prompt-ai</guid>

					<description><![CDATA[Guida pratica per progettare e implementare un tema WordPress completo con specifiche chiare, DESIGN.md, Google Stitch, prompt ottimizzati, theme.json, template, pattern e controlli SEO.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Oggi la progettazione di un tema WordPress parte da un'osservazione fondamentale: l'AI non elimina il lavoro difficile, lo sposta prima della scrittura del codice. Un developer può far implementare una SaaS completa da un agente, ma solo se prima ha definito architettura, vincoli, confini e criteri di completamento. Lo stesso principio vale quando vogliamo creare un <strong>tema WordPress con DESIGN.md</strong>: il risultato dipende meno dal prompt generico e molto di più dalla qualità della specifica.</p>


<p class="wp-block-paragraph">Per chi lavora su siti WordPress, questo cambia il metodo. Invece di chiedere all'AI "crea un tema moderno", conviene progettare un sistema leggibile da persone e agenti: brief, pagine, componenti, token, accessibilità, template, pattern e test. È lo stesso cambio di mentalità che ho già approfondito parlando di <a href="https://www.mrtux.it/web-design-wordpress-tramite-il-plugin-novamira-ai" data-wpel-link="internal" target="_self" rel="noopener">web design WordPress con Novamira.ai</a> e di <a href="https://www.mrtux.it/futuro-siti-web-temi-wordpress-intelligenza-artificiale" data-wpel-link="internal" target="_self" rel="noopener">temi WordPress generati dall'intelligenza artificiale</a>: l'AI funziona meglio quando ha un perimetro tecnico preciso.</p>


<p class="wp-block-paragraph">In questa guida vediamo un flusso completo: prima si scrive la specifica, poi si usa <a href="https://stitch.withgoogle.com/" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Google Stitch</a> per esplorare l'interfaccia, quindi si traduce il design in <a href="https://github.com/google-labs-code/design.md" target="_blank" rel="noopener nofollow external" data-wpel-link="external">DESIGN.md</a>, si implementa un block theme WordPress con <code>theme.json</code>, template e pattern, e infine si controlla tutto con prompt mirati, WP-CLI e test manuali. Se vuoi ripassare le basi tradizionali, puoi affiancare questa guida a <a href="https://www.mrtux.it/come-creare-un-tema-wordpress-da-zero" data-wpel-link="internal" target="_self" rel="noopener">come creare un tema WordPress da zero</a>.</p>


<p class="wp-block-paragraph">La tesi è semplice: il tema non deve emergere dal codice per tentativi. Deve derivare da una specifica. Il codice è una conseguenza, non il punto di partenza.</p>


<h2 class="wp-block-heading">Perché partire da una specifica prima del codice</h2>


<p class="wp-block-paragraph">Per progettare in modo efficace un tema WordPress con standard attuali bisogna  insistere su un punto: chi usa bene gli agenti AI non salta la parte difficile, salta solo la parte più meccanica dell'implementazione. Nel caso di un tema WordPress, la parte difficile non è creare una cartella in <code>wp-content/themes</code>. È decidere cosa il tema deve fare, cosa non deve toccare, come deve comportarsi nel Site Editor, quali blocchi deve supportare e quali vincoli non possono essere violati.</p>


<p class="wp-block-paragraph">Una specifica utile deve rispondere almeno a queste domande:</p>


<ul class="wp-block-list">
<li>Quale problema risolve il tema e per quale pubblico?</li>
<li>Quali pagine e template sono indispensabili al primo rilascio?</li>
<li>Quali componenti devono essere riutilizzabili come pattern Gutenberg?</li>
<li>Quali token regolano colori, font, spaziature, raggi, ombre e layout?</li>
<li>Quali file l'agente AI può modificare e quali deve lasciare intatti?</li>
<li>Quali criteri definiscono "finito": responsive, accessibilità, performance, SEO, compatibilità editor?</li>
</ul>


<p class="wp-block-paragraph">Questa è la differenza tra vibe coding casuale e sviluppo assistito serio: non chiedi all'AI di indovinare, le dai un contratto operativo.</p>


<h2 class="wp-block-heading">Architettura del workflow</h2>


<p class="wp-block-paragraph">Il flusso consigliato è diviso in sette fasi. Ogni fase produce un output che diventa input per la successiva.</p>


<figure class="wp-block-table"><table><thead><tr><th>Fase</th><th>Output</th><th>Uso nel progetto</th></tr></thead><tbody><tr><td>Brief</td><td>Obiettivi, pubblico, pagine, vincoli</td><td>Evita prompt vaghi e decisioni implicite</td></tr><tr><td>Design exploration</td><td>Schermate create in Google Stitch</td><td>Valida layout, gerarchie e tono visivo</td></tr><tr><td>DESIGN.md</td><td>Token e regole del design system</td><td>Dà agli agenti AI una memoria visiva stabile</td></tr><tr><td>Theme skeleton</td><td>Cartelle, style.css, theme.json</td><td>Prepara la struttura del block theme</td></tr><tr><td>Template</td><td>index, front-page, single, archive, 404</td><td>Definisce le viste principali</td></tr><tr><td>Pattern</td><td>Hero, CTA, card, FAQ, pricing</td><td>Rende il tema modificabile nel Site Editor</td></tr><tr><td>QA</td><td>Checklist e correzioni</td><td>Controlla responsive, SEO, accessibilità e performance</td></tr></tbody></table></figure>


<h2 class="wp-block-heading">Step 1: scrivere il brief tecnico del tema</h2>


<p class="wp-block-paragraph">Prima di aprire Stitch o un editor, crea un file <code>SPEC.md</code>. Questo file descrive il risultato atteso in modo verificabile.</p>


<pre class="wp-block-code"><code># SPEC.md - Tema WordPress per studio professionale

## Obiettivo
Creare un block theme WordPress per uno studio di consulenza B2B.
Il tema deve comunicare autorevolezza, chiarezza, velocità e affidabilità.

## Pagine prioritarie
- Homepage
- Servizi
- Caso studio
- Blog
- Contatti
- 404

## Vincoli
- Nessun page builder esterno.
- Compatibile con Site Editor e Gutenberg.
- Tutte le sezioni riutilizzabili devono diventare pattern.
- Nessun H1 duplicato nei template.
- Palette e tipografia governate da theme.json.
- CSS custom ridotto al minimo.

## Criteri di completamento
- Mobile, tablet e desktop senza overflow.
- Contrasto WCAG AA sulle CTA principali.
- Template principali presenti in /templates.
- Header e footer presenti in /parts.
- Pattern registrati in /patterns.
- Score PageSpeed da verificare prima del rilascio.</code></pre>


<p class="wp-block-paragraph">Il prompt iniziale per l'agente AI non deve chiedere codice. Deve chiedere di verificare la specifica.</p>


<pre class="wp-block-code"><code>Agisci come senior WordPress theme architect.

Leggi questa specifica per un block theme WordPress.
Non generare codice.

Task:
1. Trova requisiti ambigui.
2. Elenca decisioni mancanti.
3. Proponi una struttura file coerente con un block theme moderno.
4. Indica quali parti devono diventare template e quali pattern.
5. Restituisci solo una checklist tecnica approvabile.

SPEC:
[incolla qui SPEC.md]</code></pre>


<h2 class="wp-block-heading">Step 2: progettare le prime schermate con Google Stitch</h2>


<p class="wp-block-paragraph">Google descrive Stitch come un canvas AI-native per creare, iterare e collaborare su UI ad alta fedeltà usando linguaggio naturale. Nel workflow WordPress non va usato come scorciatoia per copiare HTML a caso, ma come strumento di esplorazione: produce direzioni visive, layout e varianti che poi vanno convertite in un sistema WordPress mantenibile.</p>


<p class="wp-block-paragraph">Un prompt efficace per Stitch deve contenere obiettivo, pubblico, tono, struttura e vincoli. Ecco un esempio pronto.</p>


<pre class="wp-block-code"><code>Design a responsive WordPress block theme homepage for a B2B consulting studio.

Business goal:
Generate qualified leads for consulting calls.

Audience:
Small business owners and marketing managers who need a reliable WordPress partner.

Visual direction:
Clean, editorial, professional, calm. Avoid generic SaaS gradients and oversized decorative blobs.

Page structure:
1. Header with logo, navigation and primary CTA.
2. Hero with clear value proposition and one CTA.
3. Trust strip with service areas.
4. Services grid with 3 cards.
5. Case study preview.
6. Process section with 4 steps.
7. FAQ.
8. Final CTA.
9. Footer with contacts and legal links.

Constraints:
- Design must translate cleanly into WordPress Gutenberg blocks.
- Use reusable sections that can become block patterns.
- Keep text readable on mobile.
- Use accessible contrast for buttons and links.</code></pre>


<p class="wp-block-paragraph">Dopo aver ottenuto una variante convincente, non fermarti allo screenshot. Chiedi a Stitch o all'agente di estrarre le decisioni di design: palette, font, scala tipografica, spacing, componenti e stati. Queste informazioni diventano il materiale per <code>DESIGN.md</code>.</p>


<h2 class="wp-block-heading">Step 3: trasformare il design in DESIGN.md</h2>


<p class="wp-block-paragraph"><code>DESIGN.md</code> è utile perché rende esplicito il design system in un formato testuale leggibile dagli agenti. Il repository ufficiale di Google Labs include anche comandi CLI per validare, confrontare ed esportare token. La documentazione WordPress, invece, indica <code>theme.json</code> come il file fondamentale per impostazioni e stili globali di un block theme. Il ponte naturale è questo: <code>DESIGN.md</code> governa il linguaggio visivo, <code>theme.json</code> lo applica in WordPress.</p>


<p class="wp-block-paragraph">Un esempio essenziale di <code>DESIGN.md</code> per il tema potrebbe essere:</p>


<pre class="wp-block-code"><code># DESIGN.md

## Brand
Name: Studio Atlas
Personality: clear, practical, reliable, technical.
Audience: business owners, marketing managers, WordPress site owners.

## Color Tokens
- primary: #1E3A5F
- primary-hover: #15304F
- accent: #D97706
- background: #F7F8FA
- surface: #FFFFFF
- text: #17202A
- muted: #5F6B7A
- border: #D9DEE7

## Typography
- heading-font: Inter Tight, system-ui, sans-serif
- body-font: Inter, system-ui, sans-serif
- h1: 56px / 1.08 / 700
- h2: 40px / 1.15 / 700
- h3: 26px / 1.25 / 650
- body: 18px / 1.7 / 400
- small: 14px / 1.5 / 400

## Spacing
- xs: 8px
- sm: 16px
- md: 24px
- lg: 40px
- xl: 64px
- section: 96px

## Components
Button primary:
- background: primary
- text: #FFFFFF
- radius: 6px
- padding: 14px 22px
- hover: primary-hover
- focus: 2px solid accent

Card:
- background: surface
- border: 1px solid border
- radius: 8px
- padding: 24px
- no decorative shadow unless needed for hierarchy

## WordPress Rules
- Prefer core blocks and patterns.
- Avoid hard-coded inline styles in templates.
- Put global decisions in theme.json.
- Use CSS only for behavior not expressible through theme.json.</code></pre>


<p class="wp-block-paragraph">Prima di usare questo file come contesto per un agente, validalo. La CLI ufficiale consente il controllo strutturale.</p>


<pre class="wp-block-code"><code># comando lint
npx @google/design.md lint DESIGN.md</code></pre>


<p class="wp-block-paragraph">Quando fai evolvere il design, confronta due versioni per evitare regressioni nei token.</p>


<pre class="wp-block-code"><code># confronto due versioni
npx @google/design.md diff DESIGN.md DESIGN-v2.md</code></pre>


<h2 class="wp-block-heading">Step 4: creare lo scheletro del block theme</h2>


<p class="wp-block-paragraph">Un tema a blocchi moderno parte da pochi file ordinati. La documentazione ufficiale WordPress ricorda che i block theme usano blocchi per tutte le parti del sito, inclusi header, contenuto e footer. Per questo conviene progettare la struttura in modo compatibile con Site Editor.</p>


<pre class="wp-block-code"><code>studio-atlas/
├── style.css
├── functions.php
├── theme.json
├── screenshot.png
├── templates/
│   ├── index.html
│   ├── front-page.html
│   ├── single.html
│   ├── page.html
│   ├── archive.html
│   └── 404.html
├── parts/
│   ├── header.html
│   └── footer.html
├── patterns/
│   ├── hero-consulenza.php
│   ├── servizi-grid.php
│   ├── processo.php
│   ├── faq.php
│   └── cta-finale.php
└── assets/
    ├── css/
    └── js/</code></pre>


<p class="wp-block-paragraph">Il file <code>style.css</code> contiene l'intestazione riconosciuta da WordPress.</p>


<pre class="wp-block-code"><code>/*
Theme Name: Studio Atlas
Theme URI: https://example.com/studio-atlas
Author: Emilio Petrozzi
Description: Block theme WordPress progettato con DESIGN.md, Google Stitch e specifiche AI.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 6.9
Requires PHP: 8.0
Text Domain: studio-atlas
*/</code></pre>


<p class="wp-block-paragraph">Il prompt per generare lo scheletro deve limitare il raggio d'azione dell'agente.</p>


<pre class="wp-block-code"><code>Agisci come sviluppatore senior WordPress specializzato in block theme.

Contesto:
- SPEC.md definisce requisiti e pagine.
- DESIGN.md definisce token e componenti.

Task:
Crea lo scheletro del tema "studio-atlas".

Vincoli:
- Non creare plugin.
- Non usare page builder.
- Non inserire CSS inline nei template.
- Usa theme.json per colori, font, spacing e layout.
- Crea solo file necessari al primo rilascio.

Output:
1. Alberatura file.
2. Contenuto di style.css.
3. Contenuto minimo di functions.php.
4. Contenuto iniziale di theme.json.
5. Note sui file da completare dopo approvazione.</code></pre>


<h2 class="wp-block-heading">Step 5: tradurre DESIGN.md in theme.json</h2>


<p class="wp-block-paragraph"><code>theme.json</code> è il punto in cui il design system diventa editoriale: palette, tipografia, spaziature e layout appaiono sia nel frontend sia nell'editor. WordPress lo definisce una lingua comune tra tema, plugin, utenti e interfaccia di editing.</p>


<pre class="wp-block-code"><code>{
  "$schema": "https://schemas.wp.org/trunk/theme.json",
  "version": 2,
  "settings": {
    "appearanceTools": true,
    "layout": {
      "contentSize": "760px",
      "wideSize": "1180px"
    },
    "color": {
      "palette": [
        { "slug": "primary", "name": "Primary", "color": "#1E3A5F" },
        { "slug": "accent", "name": "Accent", "color": "#D97706" },
        { "slug": "background", "name": "Background", "color": "#F7F8FA" },
        { "slug": "surface", "name": "Surface", "color": "#FFFFFF" },
        { "slug": "text", "name": "Text", "color": "#17202A" },
        { "slug": "muted", "name": "Muted", "color": "#5F6B7A" }
      ]
    },
    "typography": {
      "fontFamilies": [
        {
          "slug": "inter",
          "name": "Inter",
          "fontFamily": "Inter, system-ui, sans-serif"
        },
        {
          "slug": "inter-tight",
          "name": "Inter Tight",
          "fontFamily": "\"Inter Tight\", Inter, system-ui, sans-serif"
        }
      ],
      "fontSizes": [
        { "slug": "small", "name": "Small", "size": "14px" },
        { "slug": "base", "name": "Base", "size": "18px" },
        { "slug": "h2", "name": "Heading 2", "size": "40px" },
        { "slug": "hero", "name": "Hero", "size": "56px" }
      ]
    },
    "spacing": {
      "spacingScale": {
        "steps": 0
      },
      "spacingSizes": [
        { "slug": "sm", "name": "Small", "size": "16px" },
        { "slug": "md", "name": "Medium", "size": "24px" },
        { "slug": "lg", "name": "Large", "size": "40px" },
        { "slug": "xl", "name": "Extra Large", "size": "64px" }
      ]
    }
  },
  "styles": {
    "color": {
      "background": "var:preset|color|background",
      "text": "var:preset|color|text"
    },
    "typography": {
      "fontFamily": "var:preset|font-family|inter",
      "fontSize": "var:preset|font-size|base",
      "lineHeight": "1.7"
    },
    "elements": {
      "heading": {
        "typography": {
          "fontFamily": "var:preset|font-family|inter-tight",
          "lineHeight": "1.15"
        }
      },
      "button": {
        "border": {
          "radius": "6px"
        },
        "color": {
          "background": "var:preset|color|primary",
          "text": "var:preset|color|surface"
        }
      }
    }
  }
}</code></pre>


<p class="wp-block-paragraph">Prompt consigliato per questa conversione:</p>


<pre class="wp-block-code"><code>Agisci come WordPress block theme engineer.

Input:
- DESIGN.md con token colore, tipografia, spacing e componenti.
- SPEC.md con vincoli del tema.

Task:
Genera un theme.json compatibile con WordPress 6.5+.

Regole:
- Usa version 2 e $schema ufficiale.
- Inserisci palette, fontFamilies, fontSizes, spacingSizes e layout.
- Evita valori duplicati non necessari.
- Non generare template.
- Non usare commenti nel JSON.

Output:
Solo JSON valido.</code></pre>


<h2 class="wp-block-heading">Step 6: creare template e parti riutilizzabili</h2>


<p class="wp-block-paragraph">I template HTML di un block theme sono markup Gutenberg. L'obiettivo non è replicare pixel per pixel l'output di Stitch, ma ricostruire le sezioni usando blocchi core, classi coerenti e pattern.</p>


<p class="wp-block-paragraph">Esempio di <code>parts/header.html</code>:</p>


<pre class="wp-block-code"><code>&lt;!-- wp:group {"align":"full","style":{"spacing":{"padding":{"top":"16px","bottom":"16px"}}},"layout":{"type":"constrained"}} --&gt;
&lt;div class="wp-block-group alignfull" style="padding-top:16px;padding-bottom:16px"&gt;
  &lt;!-- wp:group {"layout":{"type":"flex","justifyContent":"space-between","flexWrap":"wrap"}} --&gt;
  &lt;div class="wp-block-group"&gt;
    &lt;!-- wp:site-title {"level":0} /--&gt;
    &lt;!-- wp:navigation {"layout":{"type":"flex","justifyContent":"right"}} /--&gt;
    &lt;!-- wp:buttons --&gt;
    &lt;div class="wp-block-buttons"&gt;
      &lt;!-- wp:button --&gt;
      &lt;div class="wp-block-button"&gt;&lt;a class="wp-block-button__link wp-element-button"&gt;Prenota una consulenza&lt;/a&gt;&lt;/div&gt;
      &lt;!-- /wp:button --&gt;
    &lt;/div&gt;
    &lt;!-- /wp:buttons --&gt;
  &lt;/div&gt;
  &lt;!-- /wp:group --&gt;
&lt;/div&gt;
&lt;!-- /wp:group --&gt;</code></pre>


<p class="wp-block-paragraph">Prompt per generare template senza perdere controllo:</p>


<pre class="wp-block-code"><code>Agisci come Gutenberg block theme developer.

Task:
Crea i template HTML per:
- front-page.html
- single.html
- archive.html
- 404.html
- parts/header.html
- parts/footer.html

Vincoli:
- Usa solo markup di blocchi core WordPress.
- Non creare un H1 nel contenuto se il template già usa post-title.
- Usa template parts per header e footer.
- Le sezioni complesse devono richiamare pattern, non duplicare markup.
- Non usare CSS inline salvo padding/spaziature supportate dai blocchi.

Output:
Un file alla volta, con percorso e contenuto completo.</code></pre>


<h2 class="wp-block-heading">Step 7: convertire le sezioni in pattern Gutenberg</h2>


<p class="wp-block-paragraph">I pattern sono il punto in cui un tema diventa davvero usabile. Un cliente o editor può inserire una hero, una CTA o una FAQ senza chiedere modifiche al codice. Un pattern PHP minimo contiene intestazione e markup blocchi.</p>


<pre class="wp-block-code"><code>&lt;?php
/**
 * Title: Hero consulenza
 * Slug: studio-atlas/hero-consulenza
 * Categories: featured
 */
?&gt;

&lt;!-- wp:group {"align":"full","style":{"spacing":{"padding":{"top":"96px","bottom":"80px"}}},"backgroundColor":"background","layout":{"type":"constrained"}} --&gt;
&lt;div class="wp-block-group alignfull has-background-background-color has-background" style="padding-top:96px;padding-bottom:80px"&gt;
  &lt;!-- wp:heading {"level":1,"fontSize":"hero"} --&gt;
  &lt;h1 class="wp-block-heading has-hero-font-size"&gt;Un sito WordPress più chiaro, veloce e facile da gestire&lt;/h1&gt;
  &lt;!-- /wp:heading --&gt;

  &lt;!-- wp:paragraph {"fontSize":"base"} --&gt;
  &lt;p class="has-base-font-size"&gt;Progettiamo temi WordPress su misura con design system, Gutenberg e workflow AI controllati.&lt;/p&gt;
  &lt;!-- /wp:paragraph --&gt;

  &lt;!-- wp:buttons --&gt;
  &lt;div class="wp-block-buttons"&gt;
    &lt;!-- wp:button --&gt;
    &lt;div class="wp-block-button"&gt;&lt;a class="wp-block-button__link wp-element-button"&gt;Richiedi una consulenza&lt;/a&gt;&lt;/div&gt;
    &lt;!-- /wp:button --&gt;
  &lt;/div&gt;
  &lt;!-- /wp:buttons --&gt;
&lt;/div&gt;
&lt;!-- /wp:group --&gt;</code></pre>


<p class="wp-block-paragraph">Per pattern più complessi, come pricing o FAQ, chiedi prima all'agente una lista di campi modificabili. Poi genera il markup. Questo riduce il rischio di sezioni belle ma scomode da gestire.</p>


<h2 class="wp-block-heading">Step 8: aggiungere funzioni WordPress minime</h2>


<p class="wp-block-paragraph">Un block theme pulito deve avere un <code>functions.php</code> essenziale. Evita di trasformarlo in un plugin mascherato: registra asset, supporti e piccole ottimizzazioni legate al tema. Per logiche avanzate, meglio creare un plugin dedicato. Puoi approfondire la logica degli hook nella guida su <a href="https://www.mrtux.it/hook-wordpress-azioni-e-filter-per-plugin-professionali" data-wpel-link="internal" target="_self" rel="noopener">azioni e filter WordPress</a>.</p>


<pre class="wp-block-code"><code>&lt;?php
/**
 * Studio Atlas theme setup.
 */

add_action('after_setup_theme', function () {
    add_theme_support('wp-block-styles');
    add_theme_support('editor-styles');
    add_editor_style('assets/css/editor.css');
});

add_action('wp_enqueue_scripts', function () {
    wp_enqueue_style(
        'studio-atlas-style',
        get_stylesheet_uri(),
        array(),
        wp_get_theme()-&gt;get('Version')
    );
});

add_filter('should_load_separate_core_block_assets', '__return_true');</code></pre>


<p class="wp-block-paragraph">Se servono interazioni più evolute, valuta la <a href="https://developer.wordpress.org/block-editor/reference-guides/interactivity-api/" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Interactivity API</a>, disponibile in WordPress Core dalla versione 6.5 tramite il pacchetto <code>@wordpress/interactivity</code>. Non usarla per tutto: è utile quando l'interazione appartiene a blocchi e componenti, non per animazioni decorative superflue.</p>


<h2 class="wp-block-heading">Prompt ottimizzati per implementare il tema passo passo</h2>


<p class="wp-block-paragraph">La regola operativa è: un prompt, un risultato verificabile. Non chiedere all'agente di "fare tutto il tema" in una volta sola. Spezza il lavoro.</p>


<h3 class="wp-block-heading">Prompt 1: revisione architetturale</h3>


<pre class="wp-block-code"><code>Agisci come reviewer senior WordPress.

Analizza SPEC.md e DESIGN.md.
Non scrivere codice.

Dimmi:
1. Quali requisiti sono incompleti.
2. Quali rischi tecnici vedi.
3. Quali template e pattern sono davvero necessari.
4. Quali decisioni devono finire in theme.json.
5. Quali controlli fare prima del rilascio.</code></pre>


<h3 class="wp-block-heading">Prompt 2: implementazione controllata</h3>


<pre class="wp-block-code"><code>Agisci come implementatore WordPress.

Task:
Implementa solo theme.json e style.css.

Input:
- SPEC.md
- DESIGN.md

Vincoli:
- Non modificare template.
- Non creare pattern.
- Non aggiungere dipendenze.
- Mantieni JSON valido.
- Usa token coerenti con DESIGN.md.

Dopo l'implementazione:
1. Spiega le scelte.
2. Elenca cosa resta da fare.
3. Suggerisci un comando di verifica.</code></pre>


<h3 class="wp-block-heading">Prompt 3: generazione pattern</h3>


<pre class="wp-block-code"><code>Agisci come Gutenberg pattern designer.

Task:
Crea il pattern "servizi-grid.php".

Requisiti:
- 3 card servizio.
- Ogni card ha titolo, testo breve e link.
- Usa colori e font di theme.json.
- Markup compatibile con blocchi core.
- Nessun CSS custom nel pattern.

Output:
Solo contenuto completo del file PHP.</code></pre>


<h3 class="wp-block-heading">Prompt 4: QA finale</h3>


<pre class="wp-block-code"><code>Agisci come QA engineer WordPress.

Analizza il tema appena creato.

Controlla:
- Struttura file.
- Validità theme.json.
- Presenza template principali.
- Presenza header e footer.
- Pattern registrati.
- Possibili H1 duplicati.
- Accessibilità base.
- Responsive risk.
- SEO tecnica.

Output:
Tabella con problema, severità, file coinvolto e correzione consigliata.</code></pre>


<h2 class="wp-block-heading">Verifiche tecniche prima della pubblicazione</h2>


<p class="wp-block-paragraph">Quando il tema è pronto, installalo prima in locale o staging. Se hai WP-CLI disponibile, puoi automatizzare alcune verifiche.</p>


<pre class="wp-block-code"><code># verifica temi installati
wp theme list</code></pre>


<p class="wp-block-paragraph">Attiva il tema solo in ambiente di test.</p>


<pre class="wp-block-code"><code># attivazione in staging
wp theme activate studio-atlas</code></pre>


<p class="wp-block-paragraph">Controlla che WordPress non segnali errori PHP dopo l'attivazione.</p>


<pre class="wp-block-code"><code># controllo errori recenti
wp eval 'echo "Tema attivo: " . wp_get_theme()-&gt;get("Name");'</code></pre>


<p class="wp-block-paragraph">La checklist finale deve includere:</p>


<ul class="wp-block-list">
<li>Homepage leggibile su mobile senza overflow orizzontale.</li>
<li>Menu e CTA accessibili da tastiera.</li>
<li>Un solo H1 per pagina.</li>
<li>Contrasto sufficiente per testo, link e pulsanti.</li>
<li>Template per singolo articolo, pagina, archivio e 404.</li>
<li>Pattern modificabili nel Site Editor.</li>
<li>Nessun contenuto essenziale hard-coded se deve essere gestito dal cliente.</li>
<li>Font caricati in modo efficiente.</li>
<li>Performance controllata con PageSpeed Insights.</li>
</ul>


<h2 class="wp-block-heading">Errori comuni da evitare</h2>


<p class="wp-block-paragraph">Il primo errore è usare Stitch come se producesse direttamente un tema WordPress finito. Può aiutare molto nella direzione UI, ma il tema deve rispettare gerarchie WordPress, Gutenberg, template parts e manutenzione futura.</p>


<p class="wp-block-paragraph">Il secondo errore è mettere tutto in CSS. Se palette, font e spacing finiscono solo in <code>style.css</code>, l'editor non riflette davvero il design system. Il cliente vedrà opzioni incoerenti e tenderà a rompere il layout.</p>


<p class="wp-block-paragraph">Il terzo errore è chiedere all'AI output troppo ampi. Prompt enormi come "crea tutto il tema" generano codice plausibile ma difficile da verificare. Meglio far lavorare l'agente su una porzione alla volta, con file e confini chiari.</p>


<p class="wp-block-paragraph">Il quarto errore è non documentare le decisioni. Se il tema evolve, aggiorna <code>SPEC.md</code> e <code>DESIGN.md</code>. Altrimenti l'agente continuerà a lavorare su istruzioni vecchie e produrrà incoerenze.</p>


<h2 class="wp-block-heading">Risorse utili</h2>


<ul class="wp-block-list">
<li><a href="https://stitch.withgoogle.com/" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Google Stitch</a>: canvas AI per esplorare interfacce e prototipi.</li>
<li><a href="https://blog.google/innovation-and-ai/models-and-research/google-labs/stitch-ai-ui-design/" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Blog Google su Stitch e vibe design</a>: panoramica ufficiale dell'evoluzione di Stitch.</li>
<li><a href="https://github.com/google-labs-code/design.md" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Google Labs DESIGN.md</a>: specifica, CLI, lint, diff ed export token.</li>
<li><a href="https://developer.wordpress.org/themes/global-settings-and-styles/introduction-to-theme-json/" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Documentazione WordPress su theme.json</a>: base tecnica per stili globali e impostazioni.</li>
<li><a href="https://wordpress.org/documentation/article/block-themes/" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Documentazione WordPress sui block theme</a>: introduzione al modello Site Editor.</li>
<li><a href="https://developer.wordpress.org/block-editor/reference-guides/interactivity-api/" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Interactivity API</a>: standard WordPress per blocchi interattivi moderni.</li>
</ul>


<h2 class="wp-block-heading">FAQ</h2>


<h3 class="wp-block-heading">Posso creare un tema WordPress completo solo con Stitch?</h3>


<p class="wp-block-paragraph">No, non in modo professionale. Stitch è utile per ideazione, layout e direzione visiva. Un tema WordPress completo richiede struttura del tema, <code>theme.json</code>, template, pattern, compatibilità Gutenberg, test e controlli tecnici.</p>


<h3 class="wp-block-heading">DESIGN.md sostituisce theme.json?</h3>


<p class="wp-block-paragraph">No. <code>DESIGN.md</code> documenta il design system in forma leggibile dagli agenti AI. <code>theme.json</code> applica quelle decisioni dentro WordPress, rendendole disponibili al frontend e all'editor.</p>


<h3 class="wp-block-heading">Meglio un tema classico o un block theme?</h3>


<p class="wp-block-paragraph">Per un nuovo progetto orientato a Gutenberg e Site Editor, un block theme è spesso la scelta più coerente. Un tema classico resta valido quando il progetto ha vincoli legacy, template PHP complessi o dipendenze già consolidate.</p>


<h3 class="wp-block-heading">Gli agenti AI possono implementare direttamente il tema?</h3>


<p class="wp-block-paragraph">Sì, ma solo se ricevono specifiche, confini e criteri di verifica. Il punto del documento allegato è proprio questo: l'AI produce risultati migliori quando il lavoro di progettazione è esplicito, scritto e verificabile.</p>


<h2 class="wp-block-heading">Conclusione</h2>


<p class="wp-block-paragraph">Creare un tema WordPress completo con AI non significa delegare il pensiero al modello. Significa spostare il valore sulla progettazione: descrivere bene il sistema, definire vincoli, produrre un design system e far implementare porzioni controllate. Google Stitch aiuta a esplorare l'interfaccia, <code>DESIGN.md</code> conserva la coerenza visiva, <code>theme.json</code> porta quella coerenza dentro WordPress.</p>


<p class="wp-block-paragraph">La domanda utile, prima di generare codice, è questa: se un altro sviluppatore o un agente AI dovesse costruire il tema senza parlarti, avrebbe abbastanza informazioni per farlo correttamente? Se la risposta è no, non manca un prompt migliore. Manca una specifica migliore.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.mrtux.it/progettare-tema-wordpress-design-md-google-stitch-prompt-ai/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>DESIGN.md di Google: guida al file per agenti AI e design system</title>
		<link>https://www.mrtux.it/design-md-google-agenti-ai-design-system</link>
					<comments>https://www.mrtux.it/design-md-google-agenti-ai-design-system#respond</comments>
		
		<dc:creator><![CDATA[Emilio Petrozzi]]></dc:creator>
		<pubDate>Sun, 10 May 2026 16:52:46 +0000</pubDate>
				<category><![CDATA[Intelligenza artificiale]]></category>
		<category><![CDATA[agenti-ai]]></category>
		<category><![CDATA[design system]]></category>
		<category><![CDATA[design tokens]]></category>
		<category><![CDATA[DESIGN.md]]></category>
		<category><![CDATA[frontend]]></category>
		<category><![CDATA[Google]]></category>
		<guid isPermaLink="false">https://www.mrtux.it/design-md-google-agenti-ai-design-system</guid>

					<description><![CDATA[Guida tecnica in italiano a DESIGN.md di Google: design token, YAML front matter, lint, export e uso con agenti AI.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Negli ultimi mesi il rapporto tra design system e intelligenza artificiale è cambiato rapidamente. Non basta più avere componenti in Figma, token in un file JSON o linee guida sparse in un documento interno: se un team usa agenti AI per generare interfacce, refactoring frontend o prototipi, anche quegli agenti devono capire il linguaggio visivo del prodotto.</p>



<p class="wp-block-paragraph">È qui che entra in gioco DESIGN.md, il nuovo formato open source pubblicato da Google Labs Code per descrivere una visual identity in modo leggibile sia dagli esseri umani sia dagli agenti di coding. L’idea è semplice ma molto potente: creare un file testuale, versionabile e validabile che contenga design token, razionale visivo, regole sui componenti e indicazioni pratiche su cosa fare e cosa evitare.</p>



<p class="wp-block-paragraph">In altre parole, DESIGN.md prova a diventare per il design quello che altri file di configurazione sono già diventati per sviluppo, linting, formattazione e automazione: una fonte di verità chiara, portabile e adatta ai workflow moderni con AI.</p>



<h2 class="wp-block-heading">Cos’è DESIGN.md e perché è importante</h2>



<p class="wp-block-paragraph">DESIGN.md è un formato pensato per descrivere l’identità visiva di un prodotto agli agenti di codice. La definizione ufficiale del repository <a href="https://github.com/google-labs-code/design.md" target="_blank" rel="noopener nofollow external" data-wpel-link="external">google-labs-code/design.md</a> parla di una specifica per dare agli agenti una comprensione persistente e strutturata di un design system.</p>



<p class="wp-block-paragraph">Il punto chiave è la parola persistente. Un agente AI può ricevere istruzioni nel prompt, ma quelle istruzioni spesso sono temporanee, incomplete o ambigue. Un file DESIGN.md, invece, può stare nel repository accanto al codice, essere revisionato in pull request, validato con una CLI e riutilizzato da strumenti diversi.</p>



<p class="wp-block-paragraph">Il formato unisce due livelli:</p>



<ul class="wp-block-list"><li>una parte machine-readable in YAML front matter, dove vengono definiti token come colori, tipografia, spacing, radius e componenti;</li><li>una parte human-readable in Markdown, dove si spiega il perché delle scelte e come applicarle in situazioni reali.</li></ul>



<p class="wp-block-paragraph">Questa combinazione è interessante perché i soli token non bastano. Sapere che il colore primario è <code>#1A1C1E</code> dice poco sul tono dell’interfaccia. Sapere anche che quel colore rappresenta “deep ink”, autorevolezza e leggibilità editoriale aiuta l’agente a usarlo con più coerenza.</p>



<h2 class="wp-block-heading">Il problema che DESIGN.md prova a risolvere</h2>



<p class="wp-block-paragraph">Molti team hanno già un design system, ma spesso è distribuito in troppi luoghi: Figma, Storybook, documentazione interna, file CSS, Tailwind config, component library, issue di progetto e memoria informale del team. Quando entra in scena un agente AI, questa frammentazione diventa un problema tecnico.</p>



<p class="wp-block-paragraph">Un agente può generare una pagina funzionante, ma senza un contesto stabile rischia di:</p>



<ul class="wp-block-list"><li>inventare colori non presenti nel brand;</li><li>usare font o pesi tipografici incoerenti;</li><li>creare bottoni con radius e padding casuali;</li><li>mescolare stili editoriali, SaaS, dashboard e landing page;</li><li>ignorare contrasto e accessibilità;</li><li>produrre componenti apparentemente belli ma scollegati dal sistema reale.</li></ul>



<p class="wp-block-paragraph">DESIGN.md riduce questo rischio perché trasforma le linee guida di design in un contratto leggibile dal codice e dagli agenti. Non sostituisce Figma o una libreria componenti, ma aggiunge un livello di istruzioni condivise che può viaggiare con il repository.</p>



<h2 class="wp-block-heading">Come è fatto un file DESIGN.md</h2>



<p class="wp-block-paragraph">La struttura ufficiale prevede un file Markdown con front matter YAML opzionale. Il front matter contiene i token normativi; il corpo Markdown contiene spiegazioni, razionale e linee guida.</p>



<p class="wp-block-paragraph">Ecco un esempio semplificato:</p>



<pre class="wp-block-code"><code>---
version: alpha
name: Editorial Tech
colors:
  primary: "#1A1C1E"
  secondary: "#6C7278"
  tertiary: "#B8422E"
  neutral: "#F7F5F2"
typography:
  headline-lg:
    fontFamily: Public Sans
    fontSize: 48px
    fontWeight: 600
    lineHeight: 1.1
  body-md:
    fontFamily: Public Sans
    fontSize: 16px
    fontWeight: 400
    lineHeight: 1.6
rounded:
  sm: 4px
  md: 8px
spacing:
  sm: 8px
  md: 16px
  lg: 32px
components:
  button-primary:
    backgroundColor: "{colors.tertiary}"
    textColor: "#ffffff"
    rounded: "{rounded.sm}"
    padding: 12px
---

## Overview

Interfaccia editoriale, tecnica e autorevole. Il prodotto deve comunicare
precisione, leggibilità e affidabilità, evitando decorazioni inutili.

## Colors

Il colore primario è usato per testi e titoli. Il terziario è riservato
alle azioni principali e agli stati di enfasi.</code></pre>



<p class="wp-block-paragraph">Questo esempio mostra il principio operativo: i valori precisi sono nei token, mentre il Markdown spiega come interpretarli. Un agente può quindi rispettare sia la misura esatta sia l’intenzione progettuale.</p>



<h2 class="wp-block-heading">I token supportati: colori, tipografia, spacing e componenti</h2>



<p class="wp-block-paragraph">La specifica ufficiale descrive un insieme di gruppi token pensati per coprire gli aspetti fondamentali di una UI.</p>



<p class="wp-block-paragraph">I gruppi principali sono:</p>



<ul class="wp-block-list"><li><code>colors</code>, per palette e ruoli cromatici;</li><li><code>typography</code>, per font, dimensioni, pesi, line-height e letter-spacing;</li><li><code>rounded</code>, per la scala dei bordi arrotondati;</li><li><code>spacing</code>, per distanze, margini e ritmo visivo;</li><li><code>components</code>, per collegare i token a elementi come bottoni, chip, input e stati.</li></ul>



<p class="wp-block-paragraph">Un dettaglio tecnico importante è il supporto ai riferimenti tra token con sintassi <code>{path.to.token}</code>. Per esempio, un bottone può usare <code>backgroundColor: &quot;{colors.tertiary}&quot;</code>, evitando duplicazione e riducendo il rischio di divergenze.</p>



<p class="wp-block-paragraph">Questa scelta rende DESIGN.md più simile a un piccolo linguaggio di configurazione che a una semplice pagina di documentazione. È leggibile, ma anche analizzabile da un linter.</p>



<h2 class="wp-block-heading">Le sezioni Markdown consigliate</h2>



<p class="wp-block-paragraph">Il corpo del file non è libero in modo caotico. La specifica suggerisce un ordine canonico delle sezioni, tutte basate su heading <code>##</code>:</p>



<ol class="wp-block-list"><li>Overview;</li><li>Colors;</li><li>Typography;</li><li>Layout;</li><li>Elevation &amp; Depth;</li><li>Shapes;</li><li>Components;</li><li>Do’s and Don’ts.</li></ol>



<p class="wp-block-paragraph">Questo ordine serve a dare prevedibilità agli strumenti. Un agente sa dove cercare la personalità visiva, dove trovare le regole tipografiche, dove leggere i vincoli di layout e dove individuare errori da evitare.</p>



<p class="wp-block-paragraph">La scelta è pragmatica: DESIGN.md non vuole essere un trattato di brand identity, ma un formato operativo. Deve essere abbastanza espressivo per guidare un’interfaccia reale, ma abbastanza strutturato per essere letto e validato da una CLI.</p>



<h2 class="wp-block-heading">Esempio pratico: usare DESIGN.md in un progetto frontend</h2>



<p class="wp-block-paragraph">Immagina un team che sta costruendo una dashboard SaaS. Nel repository sono presenti componenti React, Tailwind, test e documentazione. Senza DESIGN.md, un agente AI chiamato a creare una nuova pagina “Billing” potrebbe copiare pattern visti in altre parti del codice, ma potrebbe anche introdurre nuove sfumature, radius non standard o gerarchie tipografiche incoerenti.</p>



<p class="wp-block-paragraph">Con DESIGN.md, il workflow diventa più controllabile:</p>



<ol class="wp-block-list"><li>il team definisce colori, tipografia, spacing e componenti principali;</li><li>il file viene salvato nel repository;</li><li>l’agente legge DESIGN.md prima di generare UI;</li><li>la CLI valida token, riferimenti e contrasto;</li><li>eventuali modifiche al design system vengono confrontate con <code>diff</code>.</li></ol>



<p class="wp-block-paragraph">Il risultato non è una garanzia assoluta di qualità, ma riduce drasticamente l’improvvisazione. In un contesto con più agenti o più sviluppatori, questo è un vantaggio concreto.</p>



<h2 class="wp-block-heading">Comandi CLI: lint, diff, export e spec</h2>



<p class="wp-block-paragraph">Google distribuisce anche una CLI installabile come pacchetto npm <code>@google/design.md</code>. Dal README ufficiale emerge un set di comandi pensato per validare, confrontare ed esportare il formato.</p>



<p class="wp-block-paragraph">Il comando più immediato è il lint:</p>



<pre class="wp-block-code"><code># comando lint
npx @google/design.md lint DESIGN.md</code></pre>



<p class="wp-block-paragraph">Il linter restituisce JSON strutturato con finding, severità, percorso e messaggio. Questo è utile perché un agente può leggere l’output e correggere il file in modo mirato.</p>



<p class="wp-block-paragraph">Per confrontare due versioni:</p>



<pre class="wp-block-code"><code># confronto due versioni
npx @google/design.md diff DESIGN.md DESIGN-v2.md</code></pre>



<p class="wp-block-paragraph">Questo aiuta a capire se sono stati aggiunti, rimossi o modificati token. In una pull request, può diventare un controllo utile per evitare regressioni nel design system.</p>



<p class="wp-block-paragraph">Per esportare i token:</p>



<pre class="wp-block-code"><code>npx @google/design.md export --format json-tailwind DESIGN.md &gt; tailwind.theme.json
npx @google/design.md export --format css-tailwind DESIGN.md &gt; theme.css
npx @google/design.md export --format dtcg DESIGN.md &gt; tokens.json</code></pre>



<p class="wp-block-paragraph">Gli export sono importanti perché collegano DESIGN.md agli strumenti già usati dai team: Tailwind, CSS custom properties e formati compatibili con il mondo dei design token.</p>



<p class="wp-block-paragraph">Un riferimento pratico da aggiungere al workflow è <a href="https://stitch.withgoogle.com/projects/13119987580626685469" target="_blank" rel="noopener nofollow external" data-wpel-link="external">Stitch di Google</a>, che consente di lavorare su interfacce e prototipi con un percorso orientato anche all’esportazione nel formato DESIGN.md. Questo rende il file ancora più interessante: non è solo una specifica da scrivere manualmente, ma può diventare un formato di passaggio tra progettazione visuale, generazione assistita e codice.</p>



<h2 class="wp-block-heading">Le regole di linting più utili</h2>



<p class="wp-block-paragraph">La documentazione cita diverse regole di linting, tra cui riferimenti rotti, contrasto, assenza di colore primario, token orfani, sezioni mancanti, tipografia mancante e ordine delle sezioni.</p>



<div class="wp-block-group mrtux-designmd-rules"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow">

<h3 class="wp-block-heading">Confronto rapido delle verifiche più utili</h3>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<div class="wp-block-group has-border-color" style="border-color:#d9e2ec;border-width:1px;border-radius:8px;padding-top:18px;padding-right:18px;padding-bottom:18px;padding-left:18px"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow">
<h4 class="wp-block-heading">Riferimenti rotti</h4>
<p class="wp-block-paragraph"><strong>Cosa controlla:</strong> token come <code>{colors.primary}</code> che puntano a valori inesistenti.</p><p class="wp-block-paragraph"><strong>Perché conta:</strong> evita che un agente inventi fallback visivi non previsti.</p></div></div>
</div>

<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<div class="wp-block-group has-border-color" style="border-color:#d9e2ec;border-width:1px;border-radius:8px;padding-top:18px;padding-right:18px;padding-bottom:18px;padding-left:18px"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow">
<h4 class="wp-block-heading">Contrasto WCAG</h4>
<p class="wp-block-paragraph"><strong>Cosa controlla:</strong> coppie testo/sfondo sotto il rapporto minimo consigliato.</p><p class="wp-block-paragraph"><strong>Perché conta:</strong> riduce errori di accessibilità nei componenti generati.</p></div></div>
</div></div>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex"><div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<div class="wp-block-group has-border-color" style="border-color:#d9e2ec;border-width:1px;border-radius:8px;padding-top:18px;padding-right:18px;padding-bottom:18px;padding-left:18px"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow">
<h4 class="wp-block-heading">Token orfani</h4>
<p class="wp-block-paragraph"><strong>Cosa controlla:</strong> colori definiti ma mai usati nei componenti.</p><p class="wp-block-paragraph"><strong>Perché conta:</strong> segnala palette confuse o debito nel design system.</p></div></div>
</div>

<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<div class="wp-block-group has-border-color" style="border-color:#d9e2ec;border-width:1px;border-radius:8px;padding-top:18px;padding-right:18px;padding-bottom:18px;padding-left:18px"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow">
<h4 class="wp-block-heading">Ordine sezioni</h4>
<p class="wp-block-paragraph"><strong>Cosa controlla:</strong> struttura del documento rispetto all’ordine canonico.</p><p class="wp-block-paragraph"><strong>Perché conta:</strong> rende il file prevedibile per strumenti e agenti diversi.</p></div></div>
</div></div>

</div></div>



<p class="wp-block-paragraph">Queste verifiche rendono DESIGN.md più serio di una semplice convenzione testuale. Un file può essere scritto male, ma la CLI permette di intercettare almeno una parte degli errori prima che arrivino nel codice generato.</p>



<h2 class="wp-block-heading">Perché DESIGN.md interessa a chi lavora con AI coding agent</h2>



<p class="wp-block-paragraph">Il valore più evidente è per chi usa agenti AI nel frontend. Strumenti di coding assistito possono già generare componenti, landing page e layout, ma spesso hanno bisogno di contesto. DESIGN.md offre quel contesto in una forma leggera.</p>



<p class="wp-block-paragraph">Un agente può leggere frasi come:</p>



<ul class="wp-block-list"><li>“usa il colore primario solo per l’azione più importante”;</li><li>“evita ombre pesanti, usa gerarchie tonali”;</li><li>“mantieni radius da 4px per un aspetto tecnico”;</li><li>“non usare più di due pesi tipografici nella stessa schermata”.</li></ul>



<p class="wp-block-paragraph">Queste indicazioni sono diverse dai token numerici. Sono regole di comportamento progettuale. Per un essere umano sono normali linee guida; per un agente diventano vincoli espliciti da seguire.</p>



<h2 class="wp-block-heading">Differenze rispetto a tokens.json, Figma variables e Tailwind config</h2>



<p class="wp-block-paragraph">DESIGN.md non nasce per sostituire tutto. Un file <code>tokens.json</code> resta più adatto allo scambio formale di token tra strumenti. Figma variables restano fondamentali nel lavoro dei designer. Tailwind config resta centrale quando si implementa una UI con utility class.</p>



<p class="wp-block-paragraph">La differenza è che DESIGN.md mette nello stesso posto token e razionale. Questo lo rende particolarmente adatto agli agenti, perché gli agenti non hanno bisogno solo di valori: hanno bisogno di contesto.</p>



<p class="wp-block-paragraph">Per esempio, un token può dire che <code>tertiary</code> vale <code>#B8422E</code>; il testo può spiegare che quel colore è “Boston Clay” e che deve essere usato solo per interazioni primarie. Questa seconda informazione può fare la differenza tra una UI coerente e una UI tecnicamente corretta ma visivamente confusa.</p>



<h2 class="wp-block-heading">Limiti attuali del formato</h2>



<p class="wp-block-paragraph">DESIGN.md è indicato come formato in stato <code>alpha</code>. Questo significa che lo schema, la CLI e le convenzioni potrebbero cambiare. È quindi intelligente adottarlo con aspettative realistiche.</p>



<p class="wp-block-paragraph">I limiti più evidenti sono:</p>



<ul class="wp-block-list"><li>la specifica è ancora giovane;</li><li>la sezione componenti è flessibile e in evoluzione;</li><li>non sostituisce test visivi, review di design o accessibilità manuale;</li><li>richiede disciplina nella manutenzione;</li><li>può diventare obsoleto se non viene aggiornato insieme al prodotto.</li></ul>



<p class="wp-block-paragraph">Detto questo, il formato è già utile per sperimentare un workflow più ordinato tra design system e AI coding.</p>



<h2 class="wp-block-heading">Come introdurre DESIGN.md in un team</h2>



<p class="wp-block-paragraph">Il modo migliore non è provare a documentare tutto subito. Conviene partire da un file piccolo ma accurato.</p>



<p class="wp-block-paragraph">Un percorso pratico può essere:</p>



<ol class="wp-block-list"><li>definire nome, descrizione e personalità del prodotto;</li><li>inserire palette primaria, secondaria, accento e neutral;</li><li>aggiungere 4-6 livelli tipografici realmente usati;</li><li>documentare spacing e radius principali;</li><li>descrivere 3 componenti critici: bottone primario, card e input;</li><li>scrivere 5 regole “do” e 5 regole “don’t”;</li><li>eseguire il lint e correggere gli errori;</li><li>usare il file in una singola feature generata con agenti AI;</li><li>confrontare output generato prima e dopo DESIGN.md.</li></ol>



<p class="wp-block-paragraph">Questo approccio evita il classico errore dei design system: puntare alla perfezione iniziale e non arrivare mai all’adozione reale.</p>



<h2 class="wp-block-heading">SEO tecnico e opportunità per sviluppatori WordPress</h2>



<p class="wp-block-paragraph">Anche se DESIGN.md nasce per agenti di codice e design system, il tema è rilevante anche per chi lavora con WordPress, temi custom e page builder avanzati. Un file di questo tipo potrebbe aiutare a mantenere coerenza visiva quando si generano componenti, blocchi Gutenberg, pattern di tema o layout con strumenti AI.</p>



<p class="wp-block-paragraph">Per esempio, un team WordPress potrebbe creare un DESIGN.md per descrivere:</p>



<ul class="wp-block-list"><li>palette del brand;</li><li>gerarchia tipografica del tema;</li><li>spaziature dei blocchi editoriali;</li><li>stile di card, bottoni e call to action;</li><li>regole per landing page e template WooCommerce;</li><li>vincoli di accessibilità e contrasto.</li></ul>



<p class="wp-block-paragraph">In futuro, agenti AI capaci di leggere DESIGN.md potrebbero generare pattern Gutenberg più coerenti, componenti React per block editor o CSS custom properties allineate alla brand identity. È un ponte naturale tra content management, frontend engineering e automazione.</p>



<p class="wp-block-paragraph">Per approfondire il tema nel contesto WordPress, sono collegati due percorsi utili: una guida su <a href="https://www.mrtux.it/ai-per-migliorare-seo-ux-e-design-su-wordpress" data-wpel-link="internal" target="_self" rel="noopener">AI per migliorare SEO, UX e design su WordPress</a> e un approfondimento sui <a href="https://www.mrtux.it/web-design-per-wordpress-tool-essenziali-per-creare-temi-efficaci-nel-2026" data-wpel-link="internal" target="_self" rel="noopener">tool essenziali per il web design WordPress</a>. Entrambi aiutano a collegare DESIGN.md a casi d’uso concreti: coerenza visiva, automazione dei layout, qualità UX e produzione di interfacce più controllabili.</p>



<h2 class="wp-block-heading">FAQ</h2>



<h3 class="wp-block-heading">DESIGN.md è un file di configurazione ufficiale di Google?</h3>



<p class="wp-block-paragraph">È un progetto open source pubblicato nel repository Google Labs Code. La specifica è in fase alpha e propone un formato per descrivere visual identity e design system agli agenti di coding.</p>



<h3 class="wp-block-heading">DESIGN.md sostituisce Figma?</h3>



<p class="wp-block-paragraph">No. Figma resta uno strumento visuale per progettare, discutere e prototipare. DESIGN.md aggiunge un formato testuale, versionabile e leggibile dagli agenti, utile dentro i repository di codice.</p>



<h3 class="wp-block-heading">Qual è la differenza tra DESIGN.md e design tokens?</h3>



<p class="wp-block-paragraph">I design token definiscono valori come colori, font, spacing e radius. DESIGN.md può contenere quei token, ma aggiunge anche spiegazioni in Markdown, cioè il razionale che aiuta gli agenti a capire come applicarli.</p>



<h3 class="wp-block-heading">Si può usare DESIGN.md con Tailwind?</h3>



<p class="wp-block-paragraph">Sì. La CLI documenta export verso Tailwind v3 in JSON e Tailwind v4 tramite CSS <code>@theme</code>, oltre al formato DTCG per design token.</p>



<h3 class="wp-block-heading">È pronto per la produzione?</h3>



<p class="wp-block-paragraph">È utilizzabile per sperimentazioni e workflow interni, ma va considerato un formato alpha. Prima di inserirlo in processi critici, conviene testarlo su un progetto pilota e monitorare l’evoluzione della specifica.</p>



<h2 class="wp-block-heading">Conclusione</h2>



<p class="wp-block-paragraph">DESIGN.md è interessante perché affronta un problema reale: gli agenti AI possono scrivere codice, ma senza una memoria progettuale rischiano di generare interfacce incoerenti. Un file testuale, versionabile e validabile può diventare il ponte tra design system, frontend e automazione.</p>



<p class="wp-block-paragraph">Il valore non sta solo nei token, ma nel contesto: colori con significato, tipografia con ruolo, componenti con stati, regole pratiche e divieti espliciti. Per chi lavora con AI coding agent, design system o sviluppo WordPress avanzato, DESIGN.md è un formato da osservare subito e da testare in un piccolo progetto reale.</p>



<p class="wp-block-paragraph">Il consiglio pratico è semplice: crea un primo DESIGN.md con pochi token affidabili, aggiungi rationale chiaro, esegui il lint e usalo come contesto per un agente AI. La differenza nella coerenza dell’output diventa evidente appena il progetto supera la singola pagina dimostrativa.</p>

]]></content:encoded>
					
					<wfw:commentRss>https://www.mrtux.it/design-md-google-agenti-ai-design-system/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
