diff --git a/locales/it.json b/locales/it.json
new file mode 100644
index 0000000000..217bc184bf
--- /dev/null
+++ b/locales/it.json
@@ -0,0 +1,1108 @@
+{
+ "lang": "it",
+ "rules": {
+ "accesskeys": {
+ "description": "Assicura che ogni valore dell'attributo accesskey sia unico",
+ "help": "Il valore dell'attributo accesskey deve essere unico"
+ },
+ "area-alt": {
+ "description": "Assicura che gli elementi delle mappe immagine abbiano un testo alternativo",
+ "help": "Gli elementi attivi devono avere un testo alternativo"
+ },
+ "aria-allowed-attr": {
+ "description": "Assicura che un elemento supporti i suoi attributi ARIA",
+ "help": "Gli elementi devono utilizzare solo gli attributi ARIA supportati"
+ },
+ "aria-allowed-role": {
+ "description": "Assicura che il valore dell'attributo role sia appropriato per l'elemento",
+ "help": "Il ruolo ARIA deve essere appropriato per l'elemento"
+ },
+ "aria-braille-equivalent": {
+ "description": "Assicura che aria-braillelabel e aria-brailleroledescription abbiano un equivalente non braille",
+ "help": "Gli attributi aria-braille devono avere un equivalente non braille"
+ },
+ "aria-command-name": {
+ "description": "Assicura che ogni comando ARIA abbia un nome accessibile",
+ "help": "I comandi ARIA devono avere un nome accessibile"
+ },
+ "aria-conditional-attr": {
+ "description": "Assicura che gli attributi ARIA vengano utilizzati come descritto nella specifica del ruolo dell'elemento",
+ "help": "Gli attributi ARIA devono essere utilizzati come specificato per il ruolo dell'elemento"
+ },
+ "aria-deprecated-role": {
+ "description": "Assicura che gli elementi non utilizzino ruoli obsoleti",
+ "help": "I ruoli ARIA obsoleti non devono essere utilizzati"
+ },
+ "aria-dialog-name": {
+ "description": "Assicura che ogni nodo di dialogo e alertdialog ARIA abbia un nome accessibile",
+ "help": "I nodi di dialogo e alertdialog ARIA devono avere un nome accessibile"
+ },
+ "aria-hidden-body": {
+ "description": "Assicura che aria-hidden=\"true\" non sia presente sul corpo del documento",
+ "help": "aria-hidden=\"true\" non deve essere presente sul corpo del documento"
+ },
+ "aria-hidden-focus": {
+ "description": "Assicura che gli elementi nascosti ARIA non siano a fuoco né contengano elementi a fuoco",
+ "help": "L'elemento nascosto ARIA non deve essere a fuoco né contenere elementi a fuoco"
+ },
+ "aria-input-field-name": {
+ "description": "Assicura che ogni campo di input ARIA abbia un nome accessibile",
+ "help": "I campi di input ARIA devono avere un nome accessibile"
+ },
+ "aria-meter-name": {
+ "description": "Assicura che ogni nodo misuratore ARIA abbia un nome accessibile",
+ "help": "I nodi misuratore ARIA devono avere un nome accessibile"
+ },
+ "aria-progressbar-name": {
+ "description": "Assicura che ogni nodo barra di progresso ARIA abbia un nome accessibile",
+ "help": "I nodi barra di progresso ARIA devono avere un nome accessibile"
+ },
+ "aria-prohibited-attr": {
+ "description": "Assicura che gli attributi ARIA non siano proibiti per il ruolo di un elemento",
+ "help": "Gli elementi devono utilizzare solo gli attributi ARIA consentiti"
+ },
+ "aria-required-attr": {
+ "description": "Assicura che gli elementi con ruoli ARIA abbiano tutti gli attributi ARIA richiesti",
+ "help": "Gli attributi ARIA richiesti devono essere forniti"
+ },
+ "aria-required-children": {
+ "description": "Assicura che gli elementi con un ruolo ARIA che richiede ruoli figlio contengano questi ultimi",
+ "help": "Alcuni ruoli ARIA devono contenere ruoli figlio specifici"
+ },
+ "aria-required-parent": {
+ "description": "Assicura che gli elementi con un ruolo ARIA che richiede ruoli genitore siano contenuti da questi ultimi",
+ "help": "Alcuni ruoli ARIA devono essere contenuti da ruoli genitore specifici"
+ },
+ "aria-roledescription": {
+ "description": "Assicura che aria-roledescription venga utilizzato solo su elementi con un ruolo implicito o esplicito",
+ "help": "aria-roledescription deve essere presente su elementi con un ruolo semantico"
+ },
+ "aria-roles": {
+ "description": "Assicura che tutti gli elementi con un attributo role utilizzino un valore valido",
+ "help": "I ruoli ARIA utilizzati devono essere conformi ai valori validi"
+ },
+ "aria-text": {
+ "description": "Assicura che role=\"text\" venga utilizzato su elementi senza discendenti a fuoco",
+ "help": "\"role=text\" non deve avere discendenti a fuoco"
+ },
+ "aria-toggle-field-name": {
+ "description": "Assicura che ogni campo di interruttore ARIA abbia un nome accessibile",
+ "help": "I campi di interruttore ARIA devono avere un nome accessibile"
+ },
+ "aria-tooltip-name": {
+ "description": "Assicura che ogni nodo tooltip ARIA abbia un nome accessibile",
+ "help": "I nodi tooltip ARIA devono avere un nome accessibile"
+ },
+ "aria-treeitem-name": {
+ "description": "Assicura che ogni nodo elemento albero ARIA abbia un nome accessibile",
+ "help": "I nodi elemento albero ARIA devono avere un nome accessibile"
+ },
+ "aria-valid-attr-value": {
+ "description": "Assicura che tutti gli attributi ARIA abbiano valori validi",
+ "help": "Gli attributi ARIA devono essere conformi ai valori validi"
+ },
+ "aria-valid-attr": {
+ "description": "Assicura che gli attributi che iniziano con aria- siano attributi ARIA validi",
+ "help": "Gli attributi ARIA devono essere conformi ai nomi validi"
+ },
+ "audio-caption": {
+ "description": "Assicura che gli elementi