diff --git a/data/strings/en/commons.yml b/data/strings/en/commons.yml
index 0b70331..11cb1ae 100644
--- a/data/strings/en/commons.yml
+++ b/data/strings/en/commons.yml
@@ -84,3 +84,9 @@ file.drop.selected.single: "You selected 1 file"
file.drop.selected.multiple: "You selected ??? files"
license.mit.single: "MIT License"
+
+format.raw: "Raw"
+format.json: "JSON"
+format.yaml: "YAML"
+
+action.generate: "Generate"
diff --git a/data/strings/en/countries.yml b/data/strings/en/countries.yml
new file mode 100644
index 0000000..d0dccc7
--- /dev/null
+++ b/data/strings/en/countries.yml
@@ -0,0 +1,255 @@
+# Countries - EN
+
+# ISO 3166
+# ISO 3166 Alpha-2
+iso3166.a2.AF: "Afghanistan"
+iso3166.a2.AX: "Åland Islands"
+iso3166.a2.AL: "Albania"
+iso3166.a2.DZ: "Algeria"
+iso3166.a2.AS: "American Samoa"
+iso3166.a2.AD: "Andorra"
+iso3166.a2.AO: "Angola"
+iso3166.a2.AI: "Anguilla"
+iso3166.a2.AQ: "Antarctica"
+iso3166.a2.AG: "Antigua and Barbuda"
+iso3166.a2.AR: "Argentina"
+iso3166.a2.AM: "Armenia"
+iso3166.a2.AW: "Aruba"
+iso3166.a2.AU: "Australia"
+iso3166.a2.AT: "Austria"
+iso3166.a2.AZ: "Azerbaijan"
+iso3166.a2.BS: "Bahamas"
+iso3166.a2.BH: "Bahrain"
+iso3166.a2.BD: "Bangladesh"
+iso3166.a2.BB: "Barbados"
+iso3166.a2.BY: "Belarus"
+iso3166.a2.BE: "Belgium"
+iso3166.a2.BZ: "Belize"
+iso3166.a2.BJ: "Benin"
+iso3166.a2.BM: "Bermuda"
+iso3166.a2.BT: "Bhutan"
+iso3166.a2.BO: "Bolivia, Plurinational State of"
+iso3166.a2.BQ: "Bonaire, Sint Eustatius and Saba"
+iso3166.a2.BA: "Bosnia and Herzegovina"
+iso3166.a2.BW: "Botswana"
+iso3166.a2.BV: "Bouvet Island"
+iso3166.a2.BR: "Brazil"
+iso3166.a2.IO: "British Indian Ocean Territory"
+iso3166.a2.BN: "Brunei Darussalam"
+iso3166.a2.BG: "Bulgaria"
+iso3166.a2.BF: "Burkina Faso"
+iso3166.a2.BI: "Burundi"
+iso3166.a2.CV: "Cabo Verde"
+iso3166.a2.KH: "Cambodia"
+iso3166.a2.CM: "Cameroon"
+iso3166.a2.CA: "Canada"
+iso3166.a2.KY: "Cayman Islands"
+iso3166.a2.CF: "Central African Republic"
+iso3166.a2.TD: "Chad"
+iso3166.a2.CL: "Chile"
+iso3166.a2.CN: "China"
+iso3166.a2.CX: "Christmas Island"
+iso3166.a2.CC: "Cocos (Keeling) Islands"
+iso3166.a2.CO: "Colombia"
+iso3166.a2.KM: "Comoros"
+iso3166.a2.CG: "Congo"
+iso3166.a2.CD: "Congo, Democratic Republic of the"
+iso3166.a2.CK: "Cook Islands"
+iso3166.a2.CR: "Costa Rica"
+iso3166.a2.CI: "Côte d'Ivoire"
+iso3166.a2.HR: "Croatia"
+iso3166.a2.CU: "Cuba"
+iso3166.a2.CW: "Curaçao"
+iso3166.a2.CY: "Cyprus"
+iso3166.a2.CZ: "Czechia"
+iso3166.a2.DK: "Denmark"
+iso3166.a2.DJ: "Djibouti"
+iso3166.a2.DM: "Dominica"
+iso3166.a2.DO: "Dominican Republic"
+iso3166.a2.EC: "Ecuador"
+iso3166.a2.EG: "Egypt"
+iso3166.a2.SV: "El Salvador"
+iso3166.a2.GQ: "Equatorial Guinea"
+iso3166.a2.ER: "Eritrea"
+iso3166.a2.EE: "Estonia"
+iso3166.a2.SZ: "Eswatini"
+iso3166.a2.ET: "Ethiopia"
+iso3166.a2.FK: "Falkland Islands (Malvinas)"
+iso3166.a2.FO: "Faroe Islands"
+iso3166.a2.FJ: "Fiji"
+iso3166.a2.FI: "Finland"
+iso3166.a2.FR: "France"
+iso3166.a2.GF: "French Guiana"
+iso3166.a2.PF: "French Polynesia"
+iso3166.a2.TF: "French Southern Territories"
+iso3166.a2.GA: "Gabon"
+iso3166.a2.GM: "Gambia"
+iso3166.a2.GE: "Georgia"
+iso3166.a2.DE: "Germany"
+iso3166.a2.GH: "Ghana"
+iso3166.a2.GI: "Gibraltar"
+iso3166.a2.GR: "Greece"
+iso3166.a2.GL: "Greenland"
+iso3166.a2.GD: "Grenada"
+iso3166.a2.GP: "Guadeloupe"
+iso3166.a2.GU: "Guam"
+iso3166.a2.GT: "Guatemala"
+iso3166.a2.GG: "Guernsey"
+iso3166.a2.GN: "Guinea"
+iso3166.a2.GW: "Guinea-Bissau"
+iso3166.a2.GY: "Guyana"
+iso3166.a2.HT: "Haiti"
+iso3166.a2.HM: "Heard Island and McDonald Islands"
+iso3166.a2.VA: "Holy See"
+iso3166.a2.HN: "Honduras"
+iso3166.a2.HK: "Hong Kong"
+iso3166.a2.HU: "Hungary"
+iso3166.a2.IS: "Iceland"
+iso3166.a2.IN: "India"
+iso3166.a2.ID: "Indonesia"
+iso3166.a2.IR: "Iran, Islamic Republic of"
+iso3166.a2.IQ: "Iraq"
+iso3166.a2.IE: "Ireland"
+iso3166.a2.IM: "Isle of Man"
+iso3166.a2.IL: "Israel"
+iso3166.a2.IT: "Italy"
+iso3166.a2.JM: "Jamaica"
+iso3166.a2.JP: "Japan"
+iso3166.a2.JE: "Jersey"
+iso3166.a2.JO: "Jordan"
+iso3166.a2.KZ: "Kazakhstan"
+iso3166.a2.KE: "Kenya"
+iso3166.a2.KI: "Kiribati"
+iso3166.a2.KP: "Korea, Democratic People's Republic of"
+iso3166.a2.KR: "Korea, Republic of"
+iso3166.a2.KW: "Kuwait"
+iso3166.a2.KG: "Kyrgyzstan"
+iso3166.a2.LA: "Lao People's Democratic Republic"
+iso3166.a2.LV: "Latvia"
+iso3166.a2.LB: "Lebanon"
+iso3166.a2.LS: "Lesotho"
+iso3166.a2.LR: "Liberia"
+iso3166.a2.LY: "Libya"
+iso3166.a2.LI: "Liechtenstein"
+iso3166.a2.LT: "Lithuania"
+iso3166.a2.LU: "Luxembourg"
+iso3166.a2.MO: "Macao"
+iso3166.a2.MG: "Madagascar"
+iso3166.a2.MW: "Malawi"
+iso3166.a2.MY: "Malaysia"
+iso3166.a2.MV: "Maldives"
+iso3166.a2.ML: "Mali"
+iso3166.a2.MT: "Malta"
+iso3166.a2.MH: "Marshall Islands"
+iso3166.a2.MQ: "Martinique"
+iso3166.a2.MR: "Mauritania"
+iso3166.a2.MU: "Mauritius"
+iso3166.a2.YT: "Mayotte"
+iso3166.a2.MX: "Mexico"
+iso3166.a2.FM: "Micronesia, Federated States of"
+iso3166.a2.MD: "Moldova, Republic of"
+iso3166.a2.MC: "Monaco"
+iso3166.a2.MN: "Mongolia"
+iso3166.a2.ME: "Montenegro"
+iso3166.a2.MS: "Montserrat"
+iso3166.a2.MA: "Morocco"
+iso3166.a2.MZ: "Mozambique"
+iso3166.a2.MM: "Myanmar"
+iso3166.a2.NA: "Namibia"
+iso3166.a2.NR: "Nauru"
+iso3166.a2.NP: "Nepal"
+iso3166.a2.NL: "Netherlands, Kingdom of the"
+iso3166.a2.NC: "New Caledonia"
+iso3166.a2.NZ: "New Zealand"
+iso3166.a2.NI: "Nicaragua"
+iso3166.a2.NE: "Niger"
+iso3166.a2.NG: "Nigeria"
+iso3166.a2.NU: "Niue"
+iso3166.a2.NF: "Norfolk Island"
+iso3166.a2.MK: "North Macedonia"
+iso3166.a2.MP: "Northern Mariana Islands"
+iso3166.a2.NO: "Norway"
+iso3166.a2.OM: "Oman"
+iso3166.a2.PK: "Pakistan"
+iso3166.a2.PW: "Palau"
+iso3166.a2.PS: "Palestine, State of"
+iso3166.a2.PA: "Panama"
+iso3166.a2.PG: "Papua New Guinea"
+iso3166.a2.PY: "Paraguay"
+iso3166.a2.PE: "Peru"
+iso3166.a2.PH: "Philippines"
+iso3166.a2.PN: "Pitcairn"
+iso3166.a2.PL: "Poland"
+iso3166.a2.PT: "Portugal"
+iso3166.a2.PR: "Puerto Rico"
+iso3166.a2.QA: "Qatar"
+iso3166.a2.RE: "Réunion"
+iso3166.a2.RO: "Romania"
+iso3166.a2.RU: "Russian Federation"
+iso3166.a2.RW: "Rwanda"
+iso3166.a2.BL: "Saint Barthélemy"
+iso3166.a2.SH: "Saint Helena, Ascension and Tristan da Cunha"
+iso3166.a2.KN: "Saint Kitts and Nevis"
+iso3166.a2.LC: "Saint Lucia"
+iso3166.a2.MF: "Saint Martin (French part)"
+iso3166.a2.PM: "Saint Pierre and Miquelon"
+iso3166.a2.VC: "Saint Vincent and the Grenadines"
+iso3166.a2.WS: "Samoa"
+iso3166.a2.SM: "San Marino"
+iso3166.a2.ST: "Sao Tome and Principe"
+iso3166.a2.SA: "Saudi Arabia"
+iso3166.a2.SN: "Senegal"
+iso3166.a2.RS: "Serbia"
+iso3166.a2.SC: "Seychelles"
+iso3166.a2.SL: "Sierra Leone"
+iso3166.a2.SG: "Singapore"
+iso3166.a2.SX: "Sint Maarten (Dutch part)"
+iso3166.a2.SK: "Slovakia"
+iso3166.a2.SI: "Slovenia"
+iso3166.a2.SB: "Solomon Islands"
+iso3166.a2.SO: "Somalia"
+iso3166.a2.ZA: "South Africa"
+iso3166.a2.GS: "South Georgia and the South Sandwich Islands"
+iso3166.a2.SS: "South Sudan"
+iso3166.a2.ES: "Spain"
+iso3166.a2.LK: "Sri Lanka"
+iso3166.a2.SD: "Sudan"
+iso3166.a2.SR: "Suriname"
+iso3166.a2.SJ: "Svalbard and Jan Mayen"
+iso3166.a2.SE: "Sweden"
+iso3166.a2.CH: "Switzerland"
+iso3166.a2.SY: "Syrian Arab Republic"
+iso3166.a2.TW: "Taiwan, Province of China"
+iso3166.a2.TJ: "Tajikistan"
+iso3166.a2.TZ: "Tanzania, United Republic of"
+iso3166.a2.TH: "Thailand"
+iso3166.a2.TL: "Timor-Leste"
+iso3166.a2.TG: "Togo"
+iso3166.a2.TK: "Tokelau"
+iso3166.a2.TO: "Tonga"
+iso3166.a2.TT: "Trinidad and Tobago"
+iso3166.a2.TN: "Tunisia"
+iso3166.a2.TR: "Türkiye"
+iso3166.a2.TM: "Turkmenistan"
+iso3166.a2.TC: "Turks and Caicos Islands"
+iso3166.a2.TV: "Tuvalu"
+iso3166.a2.UG: "Uganda"
+iso3166.a2.UA: "Ukraine"
+iso3166.a2.AE: "United Arab Emirates"
+iso3166.a2.GB: "United Kingdom of Great Britain and Northern Ireland"
+iso3166.a2.US: "United States of America"
+iso3166.a2.UM: "United States Minor Outlying Islands"
+iso3166.a2.UY: "Uruguay"
+iso3166.a2.UZ: "Uzbekistan"
+iso3166.a2.VU: "Vanuatu"
+iso3166.a2.VE: "Venezuela, Bolivarian Republic of"
+iso3166.a2.VN: "Viet Nam"
+iso3166.a2.VG: "Virgin Islands (British)"
+iso3166.a2.VI: "Virgin Islands (U.S.)"
+iso3166.a2.WF: "Wallis and Futuna"
+iso3166.a2.EH: "Western Sahara"
+iso3166.a2.YE: "Yemen"
+iso3166.a2.ZM: "Zambia"
+iso3166.a2.ZW: "Zimbabwe"
+
+iso3166.a2.XK: "Kosovo"
diff --git a/data/strings/en/iban-generator.yml b/data/strings/en/iban-generator.yml
new file mode 100644
index 0000000..c8233db
--- /dev/null
+++ b/data/strings/en/iban-generator.yml
@@ -0,0 +1,11 @@
+# IBAN Generator - EN
+
+meta.title: "IBAN Generator"
+
+country.label: "Country"
+
+option.count: "IBAN Count"
+option.human.readable: "Format for readability"
+option.for.each: "Generate X for each country"
+option.sepa.enable: "Enable SEPA countries"
+option.non-sepa.enable: "Enable non-SEPA countries"
diff --git a/data/strings/fr/commons.yml b/data/strings/fr/commons.yml
index a2edf29..6bb61c8 100644
--- a/data/strings/fr/commons.yml
+++ b/data/strings/fr/commons.yml
@@ -84,3 +84,9 @@ file.drop.selected.single: "Vous avez séléctionné 1 fichier"
file.drop.selected.multiple: "Vous avez séléctionné ??? fichiers"
license.mit.single: "License MIT"
+
+format.raw: "Brut"
+format.json: "JSON"
+format.yaml: "YAML"
+
+action.generate: "Générer"
diff --git a/data/strings/fr/countries.yml b/data/strings/fr/countries.yml
new file mode 100644
index 0000000..03855d6
--- /dev/null
+++ b/data/strings/fr/countries.yml
@@ -0,0 +1,257 @@
+# Countries - FR
+
+# ISO 3166
+# ISO 3166 Alpha-2
+iso3166.a2.AD: Andorre
+iso3166.a2.AE: Émirats Arabes Unis
+iso3166.a2.AF: Afghanistan
+iso3166.a2.AG: Antigua-Et-Barbuda
+iso3166.a2.AI: Anguilla
+iso3166.a2.AL: Albanie
+iso3166.a2.AM: Arménie
+iso3166.a2.AO: Angola
+iso3166.a2.AP: Région Asie/Pacifique
+iso3166.a2.AQ: Antarctique
+iso3166.a2.AR: Argentine
+iso3166.a2.AS: Samoa Américaines
+iso3166.a2.AT: Autriche
+iso3166.a2.AU: Australie
+iso3166.a2.AW: Aruba
+iso3166.a2.AX: Îles Åland
+iso3166.a2.AZ: Azerbaïdjan
+iso3166.a2.BA: Bosnie-Herzégovine
+iso3166.a2.BB: Barbad
+iso3166.a2.BD: Bangladesh
+iso3166.a2.BE: Belgique
+iso3166.a2.BF: Burkina Faso
+iso3166.a2.BG: Bulgarie
+iso3166.a2.BH: Bahreïn
+iso3166.a2.BI: Burundi
+iso3166.a2.BJ: Bénin
+iso3166.a2.BL: Saint-Barthélemy
+iso3166.a2.BM: Bermudes
+iso3166.a2.BN: Brunei Darussalam
+iso3166.a2.BO: État Plurinational De Bolivie
+iso3166.a2.BQ: Bonaire, Saint-Eustache Et Saba
+iso3166.a2.BR: Brésil
+iso3166.a2.BS: Bahamas
+iso3166.a2.BT: Bhoutan
+iso3166.a2.BV: Île Bouvet
+iso3166.a2.BW: Botswana
+iso3166.a2.BY: Biélorussie
+iso3166.a2.BZ: Belize
+iso3166.a2.CA: Canada
+iso3166.a2.CC: Îles Cocos
+iso3166.a2.CD: République Démocratique Du Congo
+iso3166.a2.CF: République Centrafricaine
+iso3166.a2.CG: Congo
+iso3166.a2.CH: Suisse
+iso3166.a2.CI: Côte D'Ivoire
+iso3166.a2.CK: Îles Cook
+iso3166.a2.CL: Chili
+iso3166.a2.CM: Cameroun
+iso3166.a2.CN: Chine
+iso3166.a2.CO: Colombie
+iso3166.a2.CR: Costa Rica
+iso3166.a2.CU: Cuba
+iso3166.a2.CV: Cap-Vert
+iso3166.a2.CW: Curaçao
+iso3166.a2.CX: Île Christmas
+iso3166.a2.CY: Chypre
+iso3166.a2.CZ: République Tchèque
+iso3166.a2.DE: Allemagne
+iso3166.a2.DJ: Djibouti
+iso3166.a2.DK: Denmark
+iso3166.a2.DM: Dominique
+iso3166.a2.DO: République Dominicaine
+iso3166.a2.DZ: Algérie
+iso3166.a2.EC: Équateur
+iso3166.a2.EE: Estonie
+iso3166.a2.EG: Égypte
+iso3166.a2.EH: Sahara Occidental
+iso3166.a2.ER: Érythrée
+iso3166.a2.ES: Espagne
+iso3166.a2.ET: Éthiopie
+iso3166.a2.EU: Europe
+iso3166.a2.FI: Finlande
+iso3166.a2.FJ: Fidji
+iso3166.a2.FK: Îles Malouines
+iso3166.a2.FM: États Fédérés De Micronésie
+iso3166.a2.FO: Îles Féroé
+iso3166.a2.FR: France
+iso3166.a2.GA: Gabon
+iso3166.a2.GB: Royaume-Uni
+iso3166.a2.GD: Grenade
+iso3166.a2.GE: Géorgie
+iso3166.a2.GF: Guyane
+iso3166.a2.GG: Guernesey
+iso3166.a2.GH: Ghana
+iso3166.a2.GI: Gibraltar
+iso3166.a2.GL: Groenland
+iso3166.a2.GM: Gambie
+iso3166.a2.GN: Guinée
+iso3166.a2.GP: Guadeloupe
+iso3166.a2.GQ: Guinée Équatoriale
+iso3166.a2.GR: Grèce
+iso3166.a2.GS: Géorgie Du Sud-Et-Les Îles Sandwich Du Sud
+iso3166.a2.GT: Guatemala
+iso3166.a2.GU: Guam
+iso3166.a2.GW: Guinée-Bissau
+iso3166.a2.GY: Guyana
+iso3166.a2.HK: Hong Kong
+iso3166.a2.HM: Îles Heard-Et-MacDonald
+iso3166.a2.HN: Honduras
+iso3166.a2.HR: Croatie
+iso3166.a2.HT: Haïti
+iso3166.a2.HU: Hongrie
+iso3166.a2.ID: Indonésie
+iso3166.a2.IE: Irlande
+iso3166.a2.IL: Israël
+iso3166.a2.IM: Île De Man
+iso3166.a2.IN: Inde
+iso3166.a2.IO: Territoire Britannique De L'océan Indien
+iso3166.a2.IQ: Irak
+iso3166.a2.IR: République Islamique D'Iran
+iso3166.a2.IS: Islande
+iso3166.a2.IT: Italie
+iso3166.a2.JE: Jersey
+iso3166.a2.JM: Jamaïque
+iso3166.a2.JO: Jordanie
+iso3166.a2.JP: Japon
+iso3166.a2.KE: Kenya
+iso3166.a2.KG: Kirghizistan
+iso3166.a2.KH: Cambodge
+iso3166.a2.KI: Kiribati
+iso3166.a2.KM: Comores
+iso3166.a2.KN: Saint-Christophe-et-Niévès
+iso3166.a2.KP: République Populaire Démocratique De Corée
+iso3166.a2.KR: République De Corée
+iso3166.a2.KW: Koweït
+iso3166.a2.KY: Îles Caïmans
+iso3166.a2.KZ: Kazakhstan
+iso3166.a2.LA: République Démocratique Populaire Lao
+iso3166.a2.LB: Liban
+iso3166.a2.LC: Sainte-Lucie
+iso3166.a2.LI: Liechtenstein
+iso3166.a2.LK: Sri Lanka
+iso3166.a2.LR: Liberia
+iso3166.a2.LS: Lesotho
+iso3166.a2.LT: Lituanie
+iso3166.a2.LU: Luxembourg
+iso3166.a2.LV: Lettonie
+iso3166.a2.LY: Libye
+iso3166.a2.MA: Maroc
+iso3166.a2.MC: Monaco
+iso3166.a2.MD: République De Moldavie
+iso3166.a2.ME: Monténégro
+iso3166.a2.MF: Saint-Martin (Partie Française)
+iso3166.a2.MG: Madagascar
+iso3166.a2.MH: Îles Marshall
+iso3166.a2.MK: Macédoine
+iso3166.a2.ML: Mali
+iso3166.a2.MM: Birmanie
+iso3166.a2.MN: Mongolie
+iso3166.a2.MO: Macao
+iso3166.a2.MP: Îles Mariannes Du Nord
+iso3166.a2.MQ: Martinique
+iso3166.a2.MR: Mauritanie
+iso3166.a2.MS: Montserrat
+iso3166.a2.MT: Malte
+iso3166.a2.MU: Maurice
+iso3166.a2.MV: Maldives
+iso3166.a2.MW: Malawi
+iso3166.a2.MX: Mexique
+iso3166.a2.MY: Malaisie
+iso3166.a2.MZ: Mozambique
+iso3166.a2.NA: Namibie
+iso3166.a2.NC: Nouvelle-Calédonie
+iso3166.a2.NE: Niger
+iso3166.a2.NF: Île Norfolk
+iso3166.a2.NG: Nigéria
+iso3166.a2.NI: Nicaragua
+iso3166.a2.NL: Pays-Bas
+iso3166.a2.NO: Norvège
+iso3166.a2.NP: Népal
+iso3166.a2.NR: Nauru
+iso3166.a2.NU: Niue
+iso3166.a2.NZ: Nouvelle-Zélande
+iso3166.a2.OM: Oman
+iso3166.a2.PA: Panama
+iso3166.a2.PE: Pérou
+iso3166.a2.PF: Polynésie Française
+iso3166.a2.PG: Papouasie-Nouvelle-Guinée
+iso3166.a2.PH: Philippines
+iso3166.a2.PK: Pakistan
+iso3166.a2.PL: Pologne
+iso3166.a2.PM: Saint-Pierre-Et-Miquelon
+iso3166.a2.PN: Pitcairn
+iso3166.a2.PR: Porto Rico
+iso3166.a2.PS: Territoires Palestiniens Occupés
+iso3166.a2.PT: Portugal
+iso3166.a2.PW: Palaos
+iso3166.a2.PY: Paraguay
+iso3166.a2.QA: Qatar
+iso3166.a2.RE: Réunion
+iso3166.a2.RO: Roumanie
+iso3166.a2.RS: Serbie
+iso3166.a2.RU: Fédération De Russie
+iso3166.a2.RW: Rwanda
+iso3166.a2.SA: Arabie Saoudite
+iso3166.a2.SB: Îles Salomon
+iso3166.a2.SC: Seychelles
+iso3166.a2.SD: Soudan
+iso3166.a2.SE: Suède
+iso3166.a2.SG: Singapour
+iso3166.a2.SH: Sainte-Hélène
+iso3166.a2.SI: Slovénie
+iso3166.a2.SJ: Svalbard Et Jan Mayen
+iso3166.a2.SK: Slovaquie
+iso3166.a2.SL: Sierra Leone
+iso3166.a2.SM: Saint-Marin
+iso3166.a2.SN: Sénégal
+iso3166.a2.SO: Somalie
+iso3166.a2.SR: Suriname
+iso3166.a2.SS: Soudan Du Sud
+iso3166.a2.ST: Sao Tomé-Et-Principe
+iso3166.a2.SV: République Du Salvador
+iso3166.a2.SX: Saint-Martin (Partie Néerlandaise)
+iso3166.a2.SY: République Arabe Syrienne
+iso3166.a2.SZ: Swaziland
+iso3166.a2.TC: Îles Turks-Et-Caïcos
+iso3166.a2.TD: Tchad
+iso3166.a2.TF: Terres Australes Françaises
+iso3166.a2.TG: Togo
+iso3166.a2.TH: Thaïlande
+iso3166.a2.TJ: Tadjikistan
+iso3166.a2.TK: Tokelau
+iso3166.a2.TL: Timor-Leste
+iso3166.a2.TM: Turkménistan
+iso3166.a2.TN: Tunisie
+iso3166.a2.TO: Tonga
+iso3166.a2.TR: Turquie
+iso3166.a2.TT: Trinité-Et-Tobago
+iso3166.a2.TV: Tuvalu
+iso3166.a2.TW: Taïwan
+iso3166.a2.TZ: République-Unie De Tanzanie
+iso3166.a2.UA: Ukraine
+iso3166.a2.UG: Ouganda
+iso3166.a2.UM: Îles Mineures Éloignées Des États-Unis
+iso3166.a2.US: États-Unis
+iso3166.a2.UY: Uruguay
+iso3166.a2.UZ: Ouzbékistan
+iso3166.a2.VA: Saint-Siège (État De La Cité Du Vatican)
+iso3166.a2.VC: Saint-Vincent-Et-Les Grenadines
+iso3166.a2.VE: Venezuela
+iso3166.a2.VG: Îles Vierges Britanniques
+iso3166.a2.VI: Îles Vierges Des États-Unis
+iso3166.a2.VN: Viet Nam
+iso3166.a2.VU: Vanuatu
+iso3166.a2.WF: Wallis Et Futuna
+iso3166.a2.WS: Samoa
+iso3166.a2.YE: Yémen
+iso3166.a2.YT: Mayotte
+iso3166.a2.ZA: Afrique Du Sud
+iso3166.a2.ZM: Zambie
+iso3166.a2.ZW: Zimbabwe
+
+iso3166.a2.XK: "Kossovo"
diff --git a/data/strings/fr/iban-generator.yml b/data/strings/fr/iban-generator.yml
new file mode 100644
index 0000000..15943a4
--- /dev/null
+++ b/data/strings/fr/iban-generator.yml
@@ -0,0 +1,11 @@
+# IBAN Generator - FR
+
+meta.title: "Générateur d'IBAN"
+
+country.label: "Pays"
+
+option.count: "Nombre d'IBAN"
+option.human.readable: "Formatter pour lecture"
+option.for.each: "Générer X pour chaque pays"
+option.sepa.enable: "Activer les pays SEPA"
+option.non-sepa.enable: "Activer les pays non-SEPA"
diff --git a/static/resources/NibblePoker/applets/iban-generator/iban-generator.css b/static/resources/NibblePoker/applets/iban-generator/iban-generator.css
index e69de29..e266a4d 100644
--- a/static/resources/NibblePoker/applets/iban-generator/iban-generator.css
+++ b/static/resources/NibblePoker/applets/iban-generator/iban-generator.css
@@ -0,0 +1,3 @@
+/*.t-monospace {
+ font-family: monospace;
+}*/
diff --git a/static/resources/NibblePoker/applets/iban-generator/iban-generator.mjs b/static/resources/NibblePoker/applets/iban-generator/iban-generator.mjs
index bf4e9e9..836a82c 100644
--- a/static/resources/NibblePoker/applets/iban-generator/iban-generator.mjs
+++ b/static/resources/NibblePoker/applets/iban-generator/iban-generator.mjs
@@ -2,9 +2,19 @@
// Author: Herwin Bozet (@NibblePoker)
// License: Public Domain (This code)
-import {isValidIban, parseStandardIban, IbanSpecification, countriesSpecs, getIbanChecksumFromParts} from "../../libs/iban.mjs";
+import {
+ parseStandardIban,
+ IbanSpecification,
+ countriesSpecs,
+ getIbanChecksumFromParts,
+ StandardIban
+} from "../../libs/iban.mjs";
//console.log(getIbanChecksumFromParts("CH", "002300A1023502601"));
console.log(parseStandardIban("LU220108783391941421"));
-//Iban.fromIban("BEjhkjkldfjslkfjsd");
+
+console.log(new StandardIban("LU", "0108783391941421", countriesSpecs.LU).toString());
+console.log(new StandardIban("LU", "123456ABCDEFGHIL", countriesSpecs.LU).toString());
+
+console.log(Object.keys(countriesSpecs));
diff --git a/static/resources/NibblePoker/applets/uuid-generator/uuid-generator.css b/static/resources/NibblePoker/applets/uuid-generator/uuid-generator.css
index 3149abb..e69de29 100644
--- a/static/resources/NibblePoker/applets/uuid-generator/uuid-generator.css
+++ b/static/resources/NibblePoker/applets/uuid-generator/uuid-generator.css
@@ -1,3 +0,0 @@
-textarea {
- resize: vertical;
-}
diff --git a/static/resources/NibblePoker/libs/iban.mjs b/static/resources/NibblePoker/libs/iban.mjs
index 41192a5..7c4a4b7 100644
--- a/static/resources/NibblePoker/libs/iban.mjs
+++ b/static/resources/NibblePoker/libs/iban.mjs
@@ -4,7 +4,6 @@
// Sources:
// * https://www.swift.com/standards/data-standards/iban-international-bank-account-number (Updated December 2024)
-
/**
* Parent class extended by all IBAN-related errors.
*/
diff --git a/templates/applets/iban-generator.jinja b/templates/applets/iban-generator.jinja
index e69de29..ff80284 100644
--- a/templates/applets/iban-generator.jinja
+++ b/templates/applets/iban-generator.jinja
@@ -0,0 +1,146 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+