diff --git a/src/strings/kab.json b/src/strings/kab.json
new file mode 100644
index 000000000..bcfeee9f1
--- /dev/null
+++ b/src/strings/kab.json
@@ -0,0 +1,69 @@
+{
+ "About_Title": "Ɣef usmel-a web",
+ "@metadata": {
+ "authors": [
+ "Athmane MOKRAOUI",
+ "ZiriSut"
+ ],
+ "last-updated": "2025-08-24",
+ "locale": [
+ "kab",
+ "kab"
+ ],
+ "completion": "82% 81.82%",
+ "missing": [
+ "What_Is_Apertium",
+ "Documentation_Para",
+ "Downloads_Para",
+ "Install_Apertium_Para",
+ "Contact_Para",
+ "Enable_JS_Warning",
+ "Morphological_Analysis",
+ "Morphological_Analysis_Help",
+ "Morphological_Generation",
+ "Morphological_Generation_Help"
+ ]
+ },
+ "title": "Apertium | Tiɣeṛɣeṛt tilellit n tsuqilt tawurmant n uɣbalu yeldin",
+ "tagline": "Tiɣeṛɣeṛt tilellit n tsuqilt tawurmant n uɣbalu yeldin",
+ "Apertium_Documentation": "Zzmam n Apertium",
+ "Translate_Document": "Tasuqilt n zzmam",
+ "Translate_Webpage": "Suqel asebtar web",
+ "Not_Available": "Tasuqilt werɛad ur telli!",
+ "File_Too_Large": "Afaylu ɣezzif aṭas!",
+ "Translation": "Tasuqilt",
+ "Translation_Help": "Sekcem-d aḍris neɣ URL ara tsuquqleḍ.",
+ "Translate": "Suqel",
+ "Detect_Language": "Tifin n tutlayt",
+ "detected": "y⋅tettwaf",
+ "Instant_Translation": "Tasuqilt tamirant",
+ "Mark_Unknown_Words": "Creḍ awalen ur nettwassen ara",
+ "Drop_Document": "Sers-d zzmam",
+ "Cancel": "Semmet",
+ "Language": "Tutlayt",
+ "About": "Ɣef",
+ "Download": "Zdem",
+ "Contact": "Anermes",
+ "Documentation": "Tasemlit",
+ "Spell_Checker": "Amseɣtay n tira",
+ "About_Apertium": "Ɣef Apertium",
+ "Apertium_Downloads": "Isadaren n Apertium",
+ "Install_Apertium": "Sebded Apertium",
+ "Help_Improve": "Ɛiwen-aɣ ad nesnerni Apertium!",
+ "Not_Found_Error": "Tuccḍa 404 Suref-aɣ kan, asebter-a dayen ulac-it!",
+ "Generate": "Sirew",
+ "APy_Request": "Tuttra APy",
+ "Request": "Tuttra",
+ "Notice_Mistake": "Twalaḍ tuccḍa?",
+ "Maintainer": "Asmel-a iḥrez-it {{maintainer}}.",
+ "Norm_Preferences": "Aɣanib n imenyafen",
+ "More_Languages": "Tettnadiḍ ɣef ugar n tutlayin? Ɛreḍ {{more_languages}}.",
+ "Analyze": "Sleḍ",
+ "Multi_Step_Translation": "Tasuqilt aget-asurif (d aɛraḍ)",
+ "description": "Apertium d tiɣeṛɣeṛt n tsuqilt tawurmant yebnan ɣef yilugan. D aseɣẓan ilelli, yeffeɣ-d ddaw tewtilin n Turagt tazayazt GNU.",
+ "Supported_Formats": "Imasalen yettwasefraken: .txt, .rtf, .odp, .ods, .odt (LibreOffice/OpenOffice), .xlsx, .pptx, .docx (Microsoft Office 2003 neɣ imaynuten).
Ifuyla .doc n Word 97 akked wid n pdf ur ttwasefraken ara.",
+ "Contact_Us": "Ur ttkukru ara ad aɣ-d-tnermseḍ ma tufiḍ tuccḍa neɣ ma yella usenfaṛ i tebɣiḍ ad aɣ-teẓreḍ nxeddem fell-as, neɣ ma tebɣiḍ ad t-tεawneḍ.",
+ "Format_Not_Supported": "Amasal ur yettwasefrak ara",
+ "Input_Text": "Sekcem aḍris",
+ "APy_Sandbox_Help": "Azen issutar igacuranen"
+}
diff --git a/src/strings/locales.json b/src/strings/locales.json
index 8c2e868dd..928f4de58 100644
--- a/src/strings/locales.json
+++ b/src/strings/locales.json
@@ -14,6 +14,7 @@
"heb": "עברית",
"hin": "हिन्दी",
"kaa": "qaraqalpaqsha",
+ "kab": "Taqbaylit",
"kaz": "қазақша",
"kir": "кыргызча",
"mar": "मराठी",
diff --git a/src/util/languages.ts b/src/util/languages.ts
index 5a16e451b..9bcb0954b 100644
--- a/src/util/languages.ts
+++ b/src/util/languages.ts
@@ -43,6 +43,7 @@ export const languages: Readonly> = {
id: 'Bahasa Indonesia',
is: 'íslenska',
it: 'italiano',
+ kab: 'Taqbaylit',
kk: 'қазақша',
ko: '한국어',
kum: 'къумукъча',
@@ -177,6 +178,7 @@ const iso639Codes: Readonly> = {
ita: 'it',
jav: 'jv',
jpn: 'ja',
+ kab: 'kab',
kal: 'kl',
kan: 'kn',
kas: 'ks',