diff --git a/src/gui/src/i18n/translations/ku.js b/src/gui/src/i18n/translations/ku.js
new file mode 100644
index 000000000..fb70861d8
--- /dev/null
+++ b/src/gui/src/i18n/translations/ku.js
@@ -0,0 +1,352 @@
+/**
+ * Copyright (C) 2024 Puter Technologies Inc.
+ *
+ * This file is part of Puter.
+ *
+ * Puter is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published
+ * by the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+
+
+const en = {
+ name: "کوردی",
+ english_name: "Kurdish",
+ code: "ku",
+ dictionary: {
+ about: "About",
+ account: "Account",
+ account_password: "Verify Account Password",
+ access_granted_to: "Access Granted To",
+ add_existing_account: "Add Existing Account",
+ all_fields_required: 'All fields are required.',
+ allow: 'Allow',
+ apply: "Apply",
+ ascending: 'Ascending',
+ associated_websites: "Associated Websites",
+ auto_arrange: 'Auto Arrange',
+ background: "Background",
+ browse: "Browse",
+ cancel: 'Cancel',
+ center: 'Center',
+ change_desktop_background: 'Change desktop background…',
+ change_email: "Change Email",
+ change_language: "Change Language",
+ change_password: "Change Password",
+ change_ui_colors: "Change UI Colors",
+ change_username: "Change Username",
+ close: 'Close',
+ close_all_windows: "Close All Windows",
+ close_all_windows_confirm: "Are you sure you want to close all windows?",
+ close_all_windows_and_log_out: 'Close Windows and Log Out',
+ change_always_open_with: "Do you want to always open this type of file with",
+ color: 'Color',
+ confirm: 'Confirm',
+ confirm_2fa_setup: 'I have added the code to my authenticator app',
+ confirm_2fa_recovery: 'I have saved my recovery codes in a secure location',
+ confirm_account_for_free_referral_storage_c2a: 'Create an account and confirm your email address to receive 1 GB of free storage. Your friend will get 1 GB of free storage too.',
+ confirm_code_generic_incorrect: "Incorrect Code.",
+ confirm_code_generic_too_many_requests: "Too many requests. Please wait a few minutes.",
+ confirm_code_generic_submit: "Submit Code",
+ confirm_code_generic_try_again: "Try Again",
+ confirm_code_generic_title: "Enter Confirmation Code",
+ confirm_code_2fa_instruction: "Enter the 6-digit code from your authenticator app.",
+ confirm_code_2fa_submit_btn: "Submit",
+ confirm_code_2fa_title: "Enter 2FA Code",
+ confirm_delete_multiple_items: 'Are you sure you want to permanently delete these items?',
+ confirm_delete_single_item: 'Do you want to permanently delete this item?',
+ confirm_open_apps_log_out: 'You have open apps. Are you sure you want to log out?',
+ confirm_new_password: "Confirm New Password",
+ confirm_delete_user: "Are you sure you want to delete your account? All your files and data will be permanently deleted. This action cannot be undone.",
+ confirm_delete_user_title: "Delete Account?",
+ confirm_session_revoke: "Are you sure you want to revoke this session?",
+ confirm_your_email_address: "Confirm Your Email Address",
+ contact_us: "Contact Us",
+ contact_us_verification_required: "You must have a verified email address to use this.",
+ contain: 'Contain',
+ continue: "Continue",
+ copy: 'Copy',
+ copy_link: "Copy Link",
+ copying: "Copying",
+ copying_file: "Copying %%",
+ cover: 'Cover',
+ create_account: "Create Account",
+ create_free_account: "Create Free Account",
+ create_shortcut: "Create Shortcut",
+ credits: "Credits",
+ current_password: "Current Password",
+ cut: 'Cut',
+ clock: "Clock",
+ clock_visible_hide: 'Hide - Always hidden',
+ clock_visible_show: 'Show - Always visible',
+ clock_visible_auto: 'Auto - Default, visible only in full-screen mode.',
+ close_all: 'Close All',
+ created: 'Created',
+ date_modified: 'Date modified',
+ default: 'Default',
+ delete: 'Delete',
+ delete_account: "Delete Account",
+ delete_permanently: "Delete Permanently",
+ deleting_file: "Deleting %%",
+ deploy_as_app: 'Deploy as app',
+ descending: 'Descending',
+ desktop: 'Desktop',
+ desktop_background_fit: "Fit",
+ developers: "Developers",
+ dir_published_as_website: `%strong% has been published to:`,
+ disable_2fa: 'Disable 2FA',
+ disable_2fa_confirm: "Are you sure you want to disable 2FA?",
+ disable_2fa_instructions: "Enter your password to disable 2FA.",
+ disassociate_dir: "Disassociate Directory",
+ documents: 'Documents',
+ dont_allow: 'Don\'t Allow',
+ download: 'Download',
+ download_file: 'Download File',
+ downloading: "Downloading",
+ email: "Email",
+ email_change_confirmation_sent: "A confirmation email has been sent to your new email address. Please check your inbox and follow the instructions to complete the process.",
+ email_invalid: 'Email is invalid.',
+ email_or_username: "Email or Username",
+ email_required: 'Email is required.',
+ empty_trash: 'Empty Trash',
+ empty_trash_confirmation: `Are you sure you want to permanently delete the items in Trash?`,
+ emptying_trash: 'Emptying Trash…',
+ enable_2fa: 'Enable 2FA',
+ end_hard: "End Hard",
+ end_process_force_confirm: "Are you sure you want to force-quit this process?",
+ end_soft: "End Soft",
+ enlarged_qr_code: "Enlarged QR Code",
+ enter_password_to_confirm_delete_user: "Enter your password to confirm account deletion",
+ error_message_is_missing: "Error message is missing.",
+ error_unknown_cause: "An unknown error occurred.",
+ error_uploading_files: "Failed to upload files",
+ favorites: "Favorites",
+ feedback: "Feedback",
+ feedback_c2a: "Please use the form below to send us your feedback, comments, and bug reports.",
+ feedback_sent_confirmation: "Thank you for contacting us. If you have an email associated with your account, you will hear back from us as soon as possible.",
+ fit: "Fit",
+ folder: 'Folder',
+ force_quit: 'Force Quit',
+ forgot_pass_c2a: "Forgot password?",
+ from: "From",
+ general: "General",
+ get_a_copy_of_on_puter: `Get a copy of '%%' on Puter.com!`,
+ get_copy_link: 'Get Copy Link',
+ hide_all_windows: "Hide All Windows",
+ home: 'Home',
+ html_document: 'HTML document',
+ hue: 'Hue',
+ image: 'Image',
+ incorrect_password: "Incorrect password",
+ invite_link: "Invite Link",
+ item: 'item',
+ items_in_trash_cannot_be_renamed: `This item can't be renamed because it's in the trash. To rename this item, first drag it out of the Trash.`,
+ jpeg_image: 'JPEG image',
+ keep_in_taskbar: 'Keep in Taskbar',
+ language: "Language",
+ license: "License",
+ lightness: 'Lightness',
+ link_copied: "Link copied",
+ loading: 'Loading',
+ log_in: "Log In",
+ log_into_another_account_anyway: 'Log into another account anyway',
+ log_out: 'Log Out',
+ looks_good: "Looks good!",
+ manage_sessions: "Manage Sessions",
+ menubar_style: "Menubar Style",
+ menubar_style_desktop: "Desktop",
+ menubar_style_system: "System",
+ menubar_style_window: "Window",
+ modified: 'Modified',
+ move: 'Move',
+ moving_file: "Moving %%",
+ my_websites: "My Websites",
+ name: 'Name',
+ name_cannot_be_empty: 'Name cannot be empty.',
+ name_cannot_contain_double_period: "Name can not be the '..' character.",
+ name_cannot_contain_period: "Name can not be the '.' character.",
+ name_cannot_contain_slash: "Name cannot contain the '/' character.",
+ name_must_be_string: "Name can only be a string.",
+ name_too_long: `Name can not be longer than %% characters.`,
+ new: 'New',
+ new_email: 'New Email',
+ new_folder: 'New folder',
+ new_password: "New Password",
+ new_username: "New Username",
+ no: 'No',
+ no_dir_associated_with_site: 'No directory associated with this address.',
+ no_websites_published: "You have not published any websites yet. Right click on a folder to get started.",
+ ok: 'OK',
+ open: "Open",
+ open_in_new_tab: "Open in New Tab",
+ open_in_new_window: "Open in New Window",
+ open_with: "Open With",
+ original_name: 'Original Name',
+ original_path: 'Original Path',
+ oss_code_and_content: "Open Source Software and Content",
+ password: "Password",
+ password_changed: "Password changed.",
+ password_recovery_rate_limit: "You've reached our rate-limit; please wait a few minutes. To prevent this in the future, avoid reloading the page too many times.",
+ password_recovery_token_invalid: "This password recovery token is no longer valid.",
+ password_recovery_unknown_error: "An unknown error occurred. Please try again later.",
+ password_required: 'Password is required.',
+ password_strength_error: "Password must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number, and one special character.",
+ passwords_do_not_match: '`New Password` and `Confirm New Password` do not match.',
+ paste: 'Paste',
+ paste_into_folder: "Paste Into Folder",
+ path: 'Path',
+ personalization: "Personalization",
+ pick_name_for_website: "Pick a name for your website:",
+ picture: "Picture",
+ pictures: 'Pictures',
+ plural_suffix: 's',
+ powered_by_puter_js: `Powered by {{link=docs}}Puter.js{{/link}}`,
+ preparing: "Preparing...",
+ preparing_for_upload: "Preparing for upload...",
+ print: 'Print',
+ privacy: "Privacy",
+ proceed_to_login: 'Proceed to login',
+ proceed_with_account_deletion: "Proceed with Account Deletion",
+ process_status_initializing: "Initializing",
+ process_status_running: "Running",
+ process_type_app: 'App',
+ process_type_init: 'Init',
+ process_type_ui: 'UI',
+ properties: "Properties",
+ public: 'Public',
+ publish: "Publish",
+ publish_as_website: 'Publish as website',
+ puter_description: `Puter is a privacy-first personal cloud to keep all your files, apps, and games in one secure place, accessible from anywhere at any time.`,
+ reading_file: "Reading %strong%",
+ recent: "Recent",
+ recommended: "Recommended",
+ recover_password: "Recover Password",
+ refer_friends_c2a: "Get 1 GB for every friend who creates and confirms an account on Puter. Your friend will get 1 GB too!",
+ refer_friends_social_media_c2a: `Get 1 GB of free storage on Puter.com!`,
+ refresh: 'Refresh',
+ release_address_confirmation: `Are you sure you want to release this address?`,
+ remove_from_taskbar:'Remove from Taskbar',
+ rename: 'Rename',
+ repeat: 'Repeat',
+ replace: 'Replace',
+ replace_all: 'Replace All',
+ resend_confirmation_code: "Re-send Confirmation Code",
+ reset_colors: "Reset Colors",
+ restart_puter_confirm: "Are you sure you want to restart Puter?",
+ restore: "Restore",
+ save: 'Save',
+ saturation: 'Saturation',
+ save_account: 'Save account',
+ save_account_to_get_copy_link: "Please create an account to proceed.",
+ save_account_to_publish: 'Please create an account to proceed.',
+ save_session: 'Save session',
+ save_session_c2a: 'Create an account to save your current session and avoid losing your work.',
+ scan_qr_c2a: 'Scan the code below\nto log into this session from other devices',
+ scan_qr_2fa: 'Scan the QR code with your authenticator app',
+ scan_qr_generic: 'Scan this QR code using your phone or another device',
+ search: 'Search',
+ seconds: 'seconds',
+ security: "Security",
+ select: "Select",
+ selected: 'selected',
+ select_color: 'Select color…',
+ sessions: "Sessions",
+ send: "Send",
+ send_password_recovery_email: "Send Password Recovery Email",
+ session_saved: "Thank you for creating an account. This session has been saved.",
+ settings: "Settings",
+ set_new_password: "Set New Password",
+ share: "Share",
+ share_to: "Share to",
+ share_with: "Share with:",
+ shortcut_to: "Shortcut to",
+ show_all_windows: "Show All Windows",
+ show_hidden: 'Show hidden',
+ sign_in_with_puter: "Sign in with Puter",
+ sign_up: "Sign Up",
+ signing_in: "Signing in…",
+ size: 'Size',
+ skip: 'Skip',
+ something_went_wrong: "Something went wrong.",
+ sort_by: 'Sort by',
+ start: 'Start',
+ status: "Status",
+ storage_usage: "Storage Usage",
+ storage_puter_used: 'used by Puter',
+ taking_longer_than_usual: 'Taking a little longer than usual. Please wait...',
+ task_manager: "Task Manager",
+ taskmgr_header_name: "Name",
+ taskmgr_header_status: "Status",
+ taskmgr_header_type: "Type",
+ terms: "Terms",
+ text_document: 'Text document',
+ tos_fineprint: `By clicking 'Create Free Account' you agree to Puter's {{link=terms}}Terms of Service{{/link}} and {{link=privacy}}Privacy Policy{{/link}}.`,
+ transparency: "Transparency",
+ trash: 'Trash',
+ two_factor: 'Two Factor Authentication',
+ two_factor_disabled: '2FA Disabled',
+ two_factor_enabled: '2FA Enabled',
+ type: 'Type',
+ type_confirm_to_delete_account: "Type 'confirm' to delete your account.",
+ ui_colors: "UI Colors",
+ ui_manage_sessions: "Session Manager",
+ ui_revoke: "Revoke",
+ undo: 'Undo',
+ unlimited: 'Unlimited',
+ unzip: "Unzip",
+ upload: 'Upload',
+ upload_here: 'Upload here',
+ usage: 'Usage',
+ username: "Username",
+ username_changed: 'Username updated successfully.',
+ username_required: 'Username is required.',
+ versions: "Versions",
+ videos: 'Videos',
+ visibility: 'Visibility',
+ yes: 'Yes',
+ yes_release_it: 'Yes, Release It',
+ you_have_been_referred_to_puter_by_a_friend: "You have been referred to Puter by a friend!",
+ zip: "Zip",
+ zipping_file: "Zipping %strong%",
+
+ // === 2FA Setup ===
+ setup2fa_1_step_heading: 'Open your authenticator app',
+ setup2fa_1_instructions: `
+ You can use any authenticator app that supports the Time-based One-Time Password (TOTP) protocol.
+ There are many to choose from, but if you're unsure
+ Authy
+ is a solid choice for Android and iOS.
+ `,
+ setup2fa_2_step_heading: 'Scan the QR code',
+ setup2fa_3_step_heading: 'Enter the 6-digit code',
+ setup2fa_4_step_heading: 'Copy your recovery codes',
+ setup2fa_4_instructions: `
+ These recovery codes are the only way to access your account if you lose your phone or can't use your authenticator app.
+ Make sure to store them in a safe place.
+ `,
+ setup2fa_5_step_heading: 'Confirm 2FA setup',
+ setup2fa_5_confirmation_1: 'I have saved my recovery codes in a secure location',
+ setup2fa_5_confirmation_2: 'I am ready to enable 2FA',
+ setup2fa_5_button: 'Enable 2FA',
+
+ // === 2FA Login ===
+ login2fa_otp_title: 'Enter 2FA Code',
+ login2fa_otp_instructions: 'Enter the 6-digit code from your authenticator app.',
+ login2fa_recovery_title: 'Enter a recovery code',
+ login2fa_recovery_instructions: 'Enter one of your recovery codes to access your account.',
+ login2fa_use_recovery_code: 'Use a recovery code',
+ login2fa_recovery_back: 'Back',
+ login2fa_recovery_placeholder: 'XXXXXXXX',
+ }
+};
+
+export default en;
\ No newline at end of file
diff --git a/src/gui/src/i18n/translations/translations.js b/src/gui/src/i18n/translations/translations.js
index 6e8ba7362..cef1bc15c 100644
--- a/src/gui/src/i18n/translations/translations.js
+++ b/src/gui/src/i18n/translations/translations.js
@@ -33,6 +33,7 @@ import it from './it.js';
import ig from './ig.js';
import ja from './ja.js';
import ko from './ko.js';
+import ku from './ku.js';
import nb from './nb.js';
import nl from './nl.js';
import nn from './nn.js';
@@ -71,6 +72,7 @@ export default {
ig,
ja,
ko,
+ ku,
nb,
nl,
nn,