Skip to content

Verify

Visual verification, Figma comparison, style capture, and report generation.

9 modules

ModuleDescription
Annota ScreenshotDisegna riquadri etichettati sugli screenshot per segnare le differenze
Acquisisci Stili ElementoAcquisisci stili calcolati dall'elemento del browser
Confronta StiliConfronta gli stili acquisiti con i valori attesi
Recupera Stile FigmaRecupera i token di design dall'API di Figma (il token rimane locale)
Genera RapportoGenera un rapporto di verifica in HTML/JSON/Markdown
Carica Set di RegoleCarica regole di verifica da un file YAML
Esegui VerificaEsegui la verifica completa del design: acquisizione → confronto → rapporto
Esegui Verifica SpecificheVerifica dinamica delle specifiche - componi qualsiasi modulo tramite YAML
Diff VisivoConfronta visivamente il design di riferimento con il sito di sviluppo, annota le differenze

Modules

Annota Screenshot

verify.annotate

Disegna riquadri etichettati sugli screenshot per segnare le differenze

Parameters:

NameTypeRequiredDefaultDescription
image_pathstringYes-Percorso dell'immagine dello screenshot
annotationsarrayYes-Array di annotazioni: [{label, x, y, larghezza, altezza, colore?, descrizione?}]
output_pathstringNo-Percorso di output per l'immagine annotata (predefinito: aggiunge suffisso _annotated)

Output:

FieldTypeDescription
output_pathstringPercorso dell'immagine annotata
annotation_countintegerNumero di annotazioni disegnate

Acquisisci Stili Elemento

verify.capture

Acquisisci stili calcolati dall'elemento del browser

Parameters:

NameTypeRequiredDefaultDescription
urlstringYes-URL to capture from
selectorstringYes-CSS selector
wait_forstringNo-Wait for selector before capture
viewport_widthnumberNo1280Viewport width
viewport_heightnumberNo800Viewport height

Output:

FieldTypeDescription
elementobjectCaptured element with styles
foundbooleanWhether element was found

Confronta Stili

verify.compare

Confronta gli stili acquisiti con i valori attesi

Parameters:

NameTypeRequiredDefaultDescription
actualobjectYes-Captured element styles (from verify.capture)
expectedobjectYes-Expected styles to compare against
selectorstringNo-Selector for reporting
size_tolerancenumberNo2.0Tolerance for size (px)
spacing_tolerancenumberNo2.0Tolerance for spacing (px)
font_size_tolerancenumberNo1.0Tolerance for font size (px)
color_tolerancenumberNo5Tolerance for color (0-255)
check_typographybooleanNoTrueCheck typography
check_colorsbooleanNoTrueCheck colors
check_spacingbooleanNoTrueCheck spacing
check_sizingbooleanNoFalseCheck sizing

Output:

FieldTypeDescription
passedbooleanWhether comparison passed
violationsarrayList of violations found
error_countnumberNumber of errors
warning_countnumberNumber of warnings

Recupera Stile Figma

verify.figma

Recupera i token di design dall'API di Figma (il token rimane locale)

Parameters:

NameTypeRequiredDefaultDescription
file_idstringYes-Figma file key (from URL)
node_idstringNo-Specific node ID to fetch
node_namestringNo-Find node by name
tokenstringNo-Figma token (or use FIGMA_TOKEN env var)

Output:

FieldTypeDescription
nodeobjectFigma node data
styleobjectExtracted style

Genera Rapporto

verify.report

Genera un rapporto di verifica in HTML/JSON/Markdown

Parameters:

NameTypeRequiredDefaultDescription
resultsarrayYes-Comparison results from verify.compare
namestringNoverify-reportReport name
urlstringNo-URL that was verified
formatstringNohtmlOutput format (html, json, markdown, all)
output_dirstringNo./verify-reportsOutput directory
screenshotsarrayNo-Screenshot paths to include

Output:

FieldTypeDescription
report_pathstringPath to generated report
summaryobjectSummary statistics

Carica Set di Regole

verify.ruleset

Carica regole di verifica da un file YAML

Parameters:

NameTypeRequiredDefaultDescription
pathstringYes-Path to YAML ruleset file

Output:

FieldTypeDescription
rulesetobjectParsed ruleset
rules_countintegerNumber of rules

Esegui Verifica

verify.run

Esegui la verifica completa del design: acquisizione → confronto → rapporto

Parameters:

NameTypeRequiredDefaultDescription
urlstringYes-URL to verify
selectorsarrayNo-CSS selectors to verify
ruleset_pathstringNo-Path to YAML ruleset file
expected_stylesobjectNo-Expected styles per selector
figma_file_idstringNo-Figma file ID for comparison
figma_tokenstringNo-Figma token (or FIGMA_TOKEN env)
figma_mappingobjectNo-Selector to Figma node mapping
output_dirstringNo./verify-reportsOutput directory
report_formatstringNohtmlReport format
take_screenshotbooleanNoTrueCapture screenshot
viewport_widthnumberNo1280Viewport width
viewport_heightnumberNo800Viewport height

Output:

FieldTypeDescription
passedbooleanOverall verification passed
summaryobjectSummary statistics
report_pathstringPath to generated report

Example: Example

yaml
url: http://localhost:3000
selectors: ["button[type=\"submit\"]", "input[type=\"email\"]"]

Example: Example

yaml
url: http://localhost:3000
selectors: ["button.primary"]
figma_file_id: abc123xyz
figma_mapping: {"button.primary": "Primary Button"}

Example: Example

yaml
url: http://localhost:3000
ruleset_path: ./design-rules.yaml

Esegui Verifica Specifiche

verify.spec

Verifica dinamica delle specifiche - componi qualsiasi modulo tramite YAML

Parameters:

NameTypeRequiredDefaultDescription
ruleset_pathstringNo-Path to YAML ruleset file
rulesetobjectNo-Inline ruleset object

Output:

FieldTypeDescription
passedboolean
summaryobject
resultsarray

Diff Visivo

verify.visual_diff

Confronta visivamente il design di riferimento con il sito di sviluppo, annota le differenze

Parameters:

NameTypeRequiredDefaultDescription
reference_urlstringYes-URL o percorso locale dell'immagine di riferimento
dev_urlstringYes-URL del sito di sviluppo da confrontare
output_dirstringNo./verify-reports/visual-diffDirectory di output per i report
focus_areasarrayNo-Aree su cui concentrarsi (es. ["header", "modulo di login"])
viewport_widthnumberNo1280Larghezza del viewport del browser
viewport_heightnumberNo800Altezza del viewport del browser
modelstringNogpt-4oModello di visione da utilizzare
api_keystringNo-Chiave API OpenAI (o usa la variabile d'ambiente OPENAI_API_KEY)

Output:

FieldTypeDescription
similarity_scorenumberPercentuale di somiglianza (0-100)
annotationsarrayElenco delle differenze annotate
annotated_imagestringPercorso dello screenshot annotato
report_pathstringPercorso del report HTML
summarystringRiepilogo delle differenze

Released under the Apache 2.0 License.