> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lighton.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Adding new languages to Paradigm

> This page allows for the creation of additionnal languages in Paradigm.

# How to Add New Languages to the Platform

## Prerequisites

To add new languages, you need one of the following roles:

* **System Administrator (SYS\_ADMIN)**
* **Account Manager (ACCOUNT\_MANAGER)**
* **Super Admin (SUPERADMIN)**

***

## Step-by-Step Guide

### 1. Access Django Admin

1. Navigate to the platform's admin panel
2. Log in with your admin credentials

### 2. Navigate to Languages

1. In the left sidebar, find the **"Translations"** section
2. Click on **"Languages"**

### 3. Add a New Language

1. Click the **"Add Language"** button in the top-right corner
2. Fill in the required fields:

   **Language Code** (required)

   * Enter the ISO 639-1 language code (2-3 letters) or chose it from the dropdown
   * Examples: `es` (Spanish), `pt` (Portuguese), `it` (Italian), `zh` (Chinese)
   * ⚠️ Must be unique - you cannot add the same code twice

   **Name** (required)

   * Enter the display name of the language
   * Examples: `Spanish`, `Portuguese`, `Italian`, `Chinese`
   * This is what users will see in the language selector

   **Direction** (required)

   * Select the text direction:
     * **ltr** (left-to-right) - For most languages like English, Spanish, French
     * **rtl** (right-to-left) - For Arabic, Hebrew, Persian, Urdu

   **Is Active** (checkbox)

   * ✅ **Checked** (default): Language appears in the platform
   * ☐ **Unchecked**: Language is hidden from users (useful for testing)
3. Click **"Save"** or **"Save and add another"**

### 4. Verify the Language Appears

1. Navigate to your profile page
2. Go to the **Language** dropdown in your profile settings
3. Confirm the new language appears in the list

***

## What Happens Automatically

Once you save a new language, the following happens **automatically** without any code deployment:

✅ **Frontend:**

* Language appears in the profile page dropdown
* Text direction is automatically applied when the language is selected

✅ **Admin:**

* Language can be managed (edited/deleted) by authorized users
* All changes are immediately reflected

***

## Adding Translation Strings

After adding a language, you need to provide translations for the UI strings:

### Method 1: Django Admin

1. Go to **Translations** → **Translation Strings**
2. Click **"Add Translation String"**
3. Fill in:
   * **Language**: Select your new language code
   * **Key**: The translation key (e.g., `common.save`, `profile.language`)
   * **Value**: The translated text
4. Click **"Save"**

### Method 2: Import/Export (Bulk Upload)

1. Go to **Translations** → **Translation Strings**
2. Click the **"Export"** button to download existing translations as a template
3. Add rows for your new language code
4. Click **"Import"** to upload the file
5. Format: CSV with columns `language`, `key`, `value`

***

## Managing Existing Languages

### Editing a Language

1. Go to **Translations** → **Languages**
2. Click on the language you want to edit
3. Make your changes
4. Click **"Save"**

Changes take effect immediately.

### Deactivating a Language

To temporarily hide a language without deleting it:

1. Go to **Translations** → **Languages**
2. Click on the language
3. **Uncheck** the "Is Active" checkbox
4. Click **"Save"**

The language will be hidden from users but translation strings remain in the database.

### Deleting a Language

1. Go to **Translations** → **Languages**
2. Select the language(s) to delete
3. Choose **"Delete selected languages"** from the Actions dropdown
4. Click **"Go"**
5. Confirm the deletion
