Skip to content

i18n - docs translations#18274

Merged
charlesBochet merged 8 commits intomainfrom
i18n-docs
Feb 26, 2026
Merged

i18n - docs translations#18274
charlesBochet merged 8 commits intomainfrom
i18n-docs

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

Created by Github action

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Feb 26, 2026

Greptile Summary

This PR updates documentation translations from Crowdin across 9 languages (Arabic, Chinese, Czech, German, Italian, Portuguese, Romanian, Russian, Turkish). Changes include updating state management documentation from Recoil to Jotai and adding new pre-install/post-install function documentation.

Key changes:

  • Updated state management examples from useRecoilState to Jotai's useAtomState with createAtomState
  • Removed RecoilRoot wrappers from component examples across all UI input documentation
  • Added documentation for definePreInstallLogicFunction() and definePostInstallLogicFunction()
  • Updated CLI command examples and project structure documentation

Translation consistency issue:
Several translation files contain mixed language content where newly added technical descriptions remain in English instead of being translated to the target language. This appears in the function definition tables for pre-install and post-install functions across all language versions. Additionally, some code block comments were changed from translated text back to English, which may be intentional for keeping code examples consistent across languages.

Confidence Score: 4/5

  • This PR is safe to merge with minor translation inconsistencies that can be addressed in follow-up updates
  • Documentation-only changes with no code logic modifications. The technical content updates (Recoil to Jotai migration) are correctly applied across all translations. Minor deduction due to incomplete translations where new content remains in English, though this is typical for Crowdin automated updates and doesn't affect functionality
  • The */developers/extend/capabilities/apps.mdx files across all languages contain untranslated English text that should be completed through Crowdin

Important Files Changed

Filename Overview
packages/twenty-docs/l/ar/developers/extend/capabilities/apps.mdx Added pre-install/post-install function documentation with mixed English/Arabic content for new additions
packages/twenty-docs/l/zh/developers/extend/capabilities/apps.mdx Added pre-install/post-install function documentation with some untranslated English content
packages/twenty-docs/l/pt/developers/extend/capabilities/apps.mdx Code block comments reverted from Portuguese to English, new function definitions have untranslated content
packages/twenty-docs/l/it/developers/extend/capabilities/apps.mdx Added pre-install/post-install functions with English descriptions mixed into Italian content
packages/twenty-docs/l/tr/developers/extend/capabilities/apps.mdx Updated with pre-install/post-install functions, some new content remains untranslated in English
packages/twenty-docs/l/cs/developers/extend/capabilities/apps.mdx Added pre-install/post-install function documentation with mixed Czech/English content
packages/twenty-docs/l/ro/developers/extend/capabilities/apps.mdx Updated with new pre-install/post-install function content, some portions untranslated
packages/twenty-docs/l/de/developers/extend/capabilities/apps.mdx Added pre-install/post-install functions with English descriptions mixed into German content

Last reviewed commit: f7eb1fd

Copy link
Copy Markdown
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

72 files reviewed, 3 comments

Edit Code Review Agent Settings | Greptile

Comment on lines 140 to +145
يكتشف SDK الكيانات عبر تحليل ملفات TypeScript الخاصة بك بحثًا عن استدعاءات **`export default define<Entity>({...})`**. يحتوي كل نوع كيان على دالة مساعدة مقابلة يتم تصديرها من `twenty-sdk`:

| دالة مساعدة | نوع الكيان |
| ---------------------------- | ------------------------------------ |
| `defineObject()` | تعريفات كائنات مخصصة |
| `defineLogicFunction()` | تعريفات الوظائف المنطقية |
| `defineFrontComponent()` | Front component definitions |
| `defineRole()` | تعريفات الأدوار |
| `defineField()` | امتدادات الحقول للكائنات الموجودة |
| `defineView()` | تعريفات العروض المحفوظة |
| `defineNavigationMenuItem()` | تعريفات عناصر قائمة التنقل |
| `defineSkill()` | تعريفات مهارات وكيل الذكاء الاصطناعي |
| دالة مساعدة | نوع الكيان |
| ---------------------------------- | ----------------------------------------------------- |
| `defineObject()` | تعريفات كائنات مخصصة |
| `defineLogicFunction()` | تعريفات الوظائف المنطقية |
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New function definitions (definePreInstallLogicFunction() and definePostInstallLogicFunction()) have English descriptions instead of Arabic translations.

Suggested change
يكتشف SDK الكيانات عبر تحليل ملفات TypeScript الخاصة بك بحثًا عن استدعاءات **`export default define<Entity>({...})`**. يحتوي كل نوع كيان على دالة مساعدة مقابلة يتم تصديرها من `twenty-sdk`:
| دالة مساعدة | نوع الكيان |
| ---------------------------- | ------------------------------------ |
| `defineObject()` | تعريفات كائنات مخصصة |
| `defineLogicFunction()` | تعريفات الوظائف المنطقية |
| `defineFrontComponent()` | Front component definitions |
| `defineRole()` | تعريفات الأدوار |
| `defineField()` | امتدادات الحقول للكائنات الموجودة |
| `defineView()` | تعريفات العروض المحفوظة |
| `defineNavigationMenuItem()` | تعريفات عناصر قائمة التنقل |
| `defineSkill()` | تعريفات مهارات وكيل الذكاء الاصطناعي |
| دالة مساعدة | نوع الكيان |
| ---------------------------------- | ----------------------------------------------------- |
| `defineObject()` | تعريفات كائنات مخصصة |
| `defineLogicFunction()` | تعريفات الوظائف المنطقية |
| `definePreInstallLogicFunction()` | دالة المنطق قبل التثبيت (تُشغَّل قبل التثبيت) |
| `definePostInstallLogicFunction()` | دالة المنطق بعد التثبيت (تُشغَّل بعد التثبيت) |

Comment on lines +55 to 74
# Add a new entity to your application (guided)
yarn twenty entity:add

# Acompanhar os logs das funções da sua aplicação
# Watch your application's function logs
yarn twenty function:logs

# Executar uma função pelo nome
yarn twenty function:execute -n my-function -p '{\"name\": \"test\"}'
# Execute a function by name
yarn twenty function:execute -n my-function -p '{"name": "test"}'

# Executar a função de pós-instalação
# Execute the pre-install function
yarn twenty function:execute --preInstall

# Execute the post-install function
yarn twenty function:execute --postInstall

# Desinstalar a aplicação do espaço de trabalho atual
# Uninstall the application from the current workspace
yarn twenty app:uninstall

# Exibir a ajuda dos comandos
# Display commands' help
yarn twenty help
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code block comments changed from Portuguese to English.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Comment on lines +142 to +152
| 辅助函数 | 实体类型 |
| ---------------------------------- | ----------------------------------------------------- |
| `defineObject()` | 自定义对象定义 |
| `defineLogicFunction()` | 逻辑函数定义 |
| `definePreInstallLogicFunction()` | Pre-install logic function (runs before installation) |
| `definePostInstallLogicFunction()` | Post-install logic function (runs after installation) |
| `defineFrontComponent()` | 前端组件定义 |
| `defineRole()` | 角色定义 |
| `defineField()` | 现有对象的字段扩展 |
| `defineView()` | Saved view definitions |
| `defineNavigationMenuItem()` | Navigation menu item definitions |
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New function definitions have untranslated English descriptions mixed into Chinese content.

Suggested change
| 辅助函数 | 实体类型 |
| ---------------------------------- | ----------------------------------------------------- |
| `defineObject()` | 自定义对象定义 |
| `defineLogicFunction()` | 逻辑函数定义 |
| `definePreInstallLogicFunction()` | Pre-install logic function (runs before installation) |
| `definePostInstallLogicFunction()` | Post-install logic function (runs after installation) |
| `defineFrontComponent()` | 前端组件定义 |
| `defineRole()` | 角色定义 |
| `defineField()` | 现有对象的字段扩展 |
| `defineView()` | Saved view definitions |
| `defineNavigationMenuItem()` | Navigation menu item definitions |
| `definePreInstallLogicFunction()` | 预安装逻辑函数(在安装前运行) |
| `definePostInstallLogicFunction()` | 后安装逻辑函数(在安装后运行) |

Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

29 issues found across 72 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/frontend-commands.mdx">

<violation number="1" location="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/frontend-commands.mdx:80">
P3: This Turkish translation file now contains an English sentence, causing inconsistent localization. Keep the sentence in Turkish to match the rest of the page.</violation>
</file>

<file name="packages/twenty-docs/l/ru/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/ru/developers/extend/capabilities/apps.mdx:722">
P2: The code example has a malformed closing line (`});},{`) that breaks the snippet syntax.</violation>
</file>

<file name="packages/twenty-docs/l/cs/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/cs/twenty-ui/input/select.mdx:26">
P2: This Czech docs page now contains English example labels, which is a localization regression. Keep example UI strings in Czech for consistency within the `cs` translation.</violation>
</file>

<file name="packages/twenty-docs/l/pt/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/pt/developers/extend/capabilities/apps.mdx:501">
P2: Core explanatory sections were added in English instead of Portuguese, causing mixed-language documentation and degrading localized doc quality.</violation>
</file>

<file name="packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: The Portuguese documentation page now includes untranslated English sentences (and one mixed-language sentence), which breaks localization consistency for `l/pt` docs.</violation>
</file>

<file name="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: This Turkish documentation file includes untranslated English sentences; keep the locale content fully in Turkish for consistency and readability.</violation>
</file>

<file name="packages/twenty-docs/l/ro/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/ro/developers/extend/capabilities/apps.mdx:55">
P2: Romanian locale documentation now contains newly added English content, resulting in a partially untranslated page.</violation>
</file>

<file name="packages/twenty-docs/l/zh/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/zh/twenty-ui/input/select.mdx:26">
P3: The zh documentation example now contains English option text, which breaks locale consistency and makes the translated page partially untranslated.</violation>
</file>

<file name="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/best-practices-front.mdx">

<violation number="1" location="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/best-practices-front.mdx:9">
P3: This Italian docs file now includes newly added English content, causing an i18n consistency regression. Keep `l/it` content fully in Italian.</violation>
</file>

<file name="packages/twenty-docs/l/zh/developers/contribute/capabilities/frontend-development/best-practices-front.mdx">

<violation number="1" location="packages/twenty-docs/l/zh/developers/contribute/capabilities/frontend-development/best-practices-front.mdx:9">
P2: This `zh` localized doc now contains newly added English prose/headings, creating inconsistent localization and reducing readability for the target audience. Keep added narrative text in Chinese in this locale file.</violation>
</file>

<file name="packages/twenty-docs/l/ru/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/ru/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: This Russian locale page contains an untranslated English sentence. Keep locale files fully translated to avoid mixed-language documentation.</violation>
</file>

<file name="packages/twenty-docs/l/tr/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/tr/twenty-ui/input/select.mdx:26">
P2: The Turkish translation example now contains untranslated English UI strings, which regresses localization consistency in this docs page.</violation>
</file>

<file name="packages/twenty-docs/l/ar/twenty-ui/input/text.mdx">

<violation number="1" location="packages/twenty-docs/l/ar/twenty-ui/input/text.mdx:33">
P2: Arabic-locale docs now include English user-facing example text (`label`/`error`), causing inconsistent localization on this page. Keep example strings localized to Arabic in `l/ar` docs.</violation>

<violation number="2" location="packages/twenty-docs/l/ar/twenty-ui/input/text.mdx:88">
P2: The Arabic docs example was switched to English placeholder/value/log text, which makes localized documentation inconsistent. Translate these example strings to Arabic.</violation>
</file>

<file name="packages/twenty-docs/l/pt/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/pt/twenty-ui/input/select.mdx:26">
P2: The Portuguese documentation example was changed to English UI labels, causing inconsistent localization in the `pt` docs page.</violation>
</file>

<file name="packages/twenty-docs/l/de/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/de/developers/extend/capabilities/apps.mdx:55">
P2: The German docs page includes newly added English-only sections/comments, resulting in mixed-language localization. Please translate added English text to German to keep the `de` locale consistent and usable.</violation>
</file>

<file name="packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/frontend-commands.mdx">

<violation number="1" location="packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/frontend-commands.mdx:80">
P3: This German translation file introduces an English sentence, which breaks localization consistency. Translate this line to German.</violation>
</file>

<file name="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/best-practices-front.mdx">

<violation number="1" location="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/best-practices-front.mdx:9">
P2: This Turkish documentation page now contains multiple newly added English strings, which creates an i18n regression and inconsistent reader experience in the `tr` locale.</violation>
</file>

<file name="packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/frontend-commands.mdx">

<violation number="1" location="packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/frontend-commands.mdx:80">
P3: This Portuguese translation file now contains an English sentence, creating inconsistent locale content. Translate this line to Portuguese to keep the `l/pt` docs coherent.</violation>
</file>

<file name="packages/twenty-docs/l/cs/developers/contribute/capabilities/frontend-development/frontend-commands.mdx">

<violation number="1" location="packages/twenty-docs/l/cs/developers/contribute/capabilities/frontend-development/frontend-commands.mdx:80">
P3: This Czech documentation page includes an English sentence, creating an incomplete translation and inconsistent locale experience.</violation>
</file>

<file name="packages/twenty-docs/l/it/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/it/twenty-ui/input/select.mdx:26">
P3: This Italian translation example contains newly added English UI strings, causing an i18n regression in localized documentation.</violation>
</file>

<file name="packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/hotkeys.mdx:172">
P3: This sentence mixes English and German instead of providing a single German translation, reducing readability and translation quality.</violation>
</file>

<file name="packages/twenty-docs/l/cs/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/cs/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: This Czech locale documentation now contains newly added English sentences, causing mixed-language content and inconsistent i18n output. Keep `l/cs` content fully Czech.</violation>
</file>

<file name="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: This Italian documentation page contains an English sentence, which breaks locale consistency and readability for Italian users.</violation>

<violation number="2" location="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/hotkeys.mdx:178">
P3: This line is not localized to Italian and should be translated to match the rest of the page.</violation>
</file>

<file name="packages/twenty-docs/l/zh/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/zh/developers/extend/capabilities/apps.mdx:501">
P3: Newly added content in the Chinese localization file is partially untranslated English, causing inconsistent i18n quality and reduced readability.</violation>
</file>

<file name="packages/twenty-docs/l/zh/twenty-ui/input/text.mdx">

<violation number="1" location="packages/twenty-docs/l/zh/twenty-ui/input/text.mdx:33">
P2: This zh-localized docs page now contains multiple English user-facing example strings, which is a localization regression and creates inconsistent documentation language for Chinese readers.</violation>
</file>

<file name="packages/twenty-docs/l/ro/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/ro/twenty-ui/input/select.mdx:23">
P2: The Select usage example omits required prop `dropdownId`, making the snippet invalid for the current API.</violation>

<violation number="2" location="packages/twenty-docs/l/ro/twenty-ui/input/select.mdx:24">
P2: `className` is passed as boolean shorthand (`true`) instead of a string, so the docs example contradicts the component prop type.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

required: ['companyName'],
},
});
});},{
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: The code example has a malformed closing line (});},{) that breaks the snippet syntax.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/ru/developers/extend/capabilities/apps.mdx, line 722:

<comment>The code example has a malformed closing line (`});},{`) that breaks the snippet syntax.</comment>

<file context>
@@ -685,7 +719,7 @@ export default defineLogicFunction({
     required: ['companyName'],
   },
-});
+});},{

</file context>


</details>

```suggestion
});

Comment on lines +26 to +30
label="Select an option"
options={[
{ value: 'option1', label: 'Option A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Option B', Icon: IconTwentyStar },
]}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: This Czech docs page now contains English example labels, which is a localization regression. Keep example UI strings in Czech for consistency within the cs translation.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/cs/twenty-ui/input/select.mdx, line 26:

<comment>This Czech docs page now contains English example labels, which is a localization regression. Keep example UI strings in Czech for consistency within the `cs` translation.</comment>

<file context>
@@ -13,26 +13,23 @@ Umožňuje uživatelům vybrat hodnotu z nabídky předdefinovaných možností.
+    <Select
+      className
+      disabled={false}
+      label="Select an option"
+      options={[
+        { value: 'option1', label: 'Option A', Icon: IconTwentyStar },
</file context>
Suggested change
label="Select an option"
options={[
{ value: 'option1', label: 'Option A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Option B', Icon: IconTwentyStar },
]}
label="Vyberte možnost"
options={[
{ value: 'option1', label: 'Možnost A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Možnost B', Icon: IconTwentyStar },
]}

* Você pode misturar vários tipos de gatilho em uma única função.

### Funções de pós-instalação
### Pre-install functions
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Core explanatory sections were added in English instead of Portuguese, causing mixed-language documentation and degrading localized doc quality.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/pt/developers/extend/capabilities/apps.mdx, line 501:

<comment>Core explanatory sections were added in English instead of Portuguese, causing mixed-language documentation and degrading localized doc quality.</comment>

<file context>
@@ -491,39 +498,64 @@ Notas:
 * Você pode misturar vários tipos de gatilho em uma única função.
 
-### Funções de pós-instalação
+### Pre-install functions
 
-Uma função de pós-instalação é uma função de lógica que é executada automaticamente após a sua aplicação ser instalada em um espaço de trabalho. Isso é útil para tarefas de configuração únicas, como preencher dados padrão, criar registros iniciais ou configurar as configurações do espaço de trabalho.
</file context>

```

Internamente, o escopo atualmente selecionado é armazenado em um estado Recoil que é compartilhado por toda a aplicação :
Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: The Portuguese documentation page now includes untranslated English sentences (and one mixed-language sentence), which breaks localization consistency for l/pt docs.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/hotkeys.mdx, line 163:

<comment>The Portuguese documentation page now includes untranslated English sentences (and one mixed-language sentence), which breaks localization consistency for `l/pt` docs.</comment>

<file context>
@@ -160,7 +160,7 @@ export enum PageHotkeyScope {

-Internamente, o escopo atualmente selecionado é armazenado em um estado Recoil que é compartilhado por toda a aplicação :
+Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :

</file context>

```

Dahili olarak, şu anda seçili olan kapsam, uygulama genelinde paylaşılan bir Recoil durumunda saklanır:
Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: This Turkish documentation file includes untranslated English sentences; keep the locale content fully in Turkish for consistency and readability.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/hotkeys.mdx, line 163:

<comment>This Turkish documentation file includes untranslated English sentences; keep the locale content fully in Turkish for consistency and readability.</comment>

<file context>
@@ -160,7 +160,7 @@ export enum PageHotkeyScope {

-Dahili olarak, şu anda seçili olan kapsam, uygulama genelinde paylaşılan bir Recoil durumunda saklanır:
+Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :

</file context>
Suggested change
Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :
Dahili olarak, şu anda seçili kapsam uygulama genelinde paylaşılan bir Jotai atomunda saklanır:

### Správa stavu

[Recoil](https://recoiljs.org/docs/introduction/core-concepts) zajišťuje správu stavu.
[Jotai](https://jotai.org/) handles state management.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: This Czech documentation page includes an English sentence, creating an incomplete translation and inconsistent locale experience.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/cs/developers/contribute/capabilities/frontend-development/frontend-commands.mdx, line 80:

<comment>This Czech documentation page includes an English sentence, creating an incomplete translation and inconsistent locale experience.</comment>

<file context>
@@ -77,7 +77,7 @@ To avoid unnecessary [re-renders](/l/cs/developers/contribute/capabilities/front
 ### Správa stavu
 
-[Recoil](https://recoiljs.org/docs/introduction/core-concepts) zajišťuje správu stavu.
+[Jotai](https://jotai.org/) handles state management.
 
 Podívejte se na [osvědčené postupy](/l/cs/developers/contribute/capabilities/frontend-development/best-practices-front#state-management) pro více informací o správě stavu.
</file context>
Suggested change
[Jotai](https://jotai.org/) handles state management.
[Jotai](https://jotai.org/) zajišťuje správu stavu.

Comment on lines +26 to +30
label="Select an option"
options={[
{ value: 'option1', label: 'Option A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Option B', Icon: IconTwentyStar },
]}
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: This Italian translation example contains newly added English UI strings, causing an i18n regression in localized documentation.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/it/twenty-ui/input/select.mdx, line 26:

<comment>This Italian translation example contains newly added English UI strings, causing an i18n regression in localized documentation.</comment>

<file context>
@@ -13,26 +13,23 @@ Permette agli utenti di scegliere un valore da un elenco di opzioni predefinite.
+    <Select
+      className
+      disabled={false}
+      label="Select an option"
+      options={[
+        { value: 'option1', label: 'Option A', Icon: IconTwentyStar },
</file context>
Suggested change
label="Select an option"
options={[
{ value: 'option1', label: 'Option A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Option B', Icon: IconTwentyStar },
]}
label="Seleziona un'opzione"
options={[
{ value: 'option1', label: 'Opzione A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Opzione B', Icon: IconTwentyStar },
]}

```

Aber dieser Recoil-State sollte niemals manuell bearbeitet werden! Wir werden im nächsten Abschnitt sehen, wie man es verwendet.
But this atom should never be handled manually ! Wir werden im nächsten Abschnitt sehen, wie man es verwendet.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: This sentence mixes English and German instead of providing a single German translation, reducing readability and translation quality.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/hotkeys.mdx, line 172:

<comment>This sentence mixes English and German instead of providing a single German translation, reducing readability and translation quality.</comment>

<file context>
@@ -169,10 +169,10 @@ export const currentHotkeyScopeState = createState<HotkeyScope>({

-Aber dieser Recoil-State sollte niemals manuell bearbeitet werden! Wir werden im nächsten Abschnitt sehen, wie man es verwendet.
+But this atom should never be handled manually ! Wir werden im nächsten Abschnitt sehen, wie man es verwendet.

Wie funktioniert es intern?

</file context>


</details>

```suggestion
Dieses Atom sollte jedoch niemals manuell verwaltet werden! Im nächsten Abschnitt sehen wir, wie man es verwendet.

Abbiamo creato un sottile wrapper su [react-hotkeys-hook](https://react-hotkeys-hook.vercel.app/docs/intro) che lo rende più performante ed evita rendering non necessari.

Abbiamo anche creato uno stato Recoil per gestire lo stato dell'ambito del tasto di scelta rapida e renderlo disponibile ovunque nell'applicazione.
We also create a Jotai atom to handle the hotkey scope state and make it available everywhere in the application.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: This line is not localized to Italian and should be translated to match the rest of the page.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/hotkeys.mdx, line 178:

<comment>This line is not localized to Italian and should be translated to match the rest of the page.</comment>

<file context>
@@ -169,10 +169,10 @@ export const currentHotkeyScopeState = createState<HotkeyScope>({
 Abbiamo creato un sottile wrapper su [react-hotkeys-hook](https://react-hotkeys-hook.vercel.app/docs/intro) che lo rende più performante ed evita rendering non necessari.
 
-Abbiamo anche creato uno stato Recoil per gestire lo stato dell'ambito del tasto di scelta rapida e renderlo disponibile ovunque nell'applicazione.
+We also create a Jotai atom to handle the hotkey scope state and make it available everywhere in the application.
</file context>
Suggested change
We also create a Jotai atom to handle the hotkey scope state and make it available everywhere in the application.
Abbiamo anche creato un atomo Jotai per gestire lo stato dell'ambito dei tasti di scelta rapida e renderlo disponibile ovunque nell'applicazione.

* 你可以在单个函数中混用多种触发器类型。

### 安装后函数
### Pre-install functions
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: Newly added content in the Chinese localization file is partially untranslated English, causing inconsistent i18n quality and reduced readability.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/zh/developers/extend/capabilities/apps.mdx, line 501:

<comment>Newly added content in the Chinese localization file is partially untranslated English, causing inconsistent i18n quality and reduced readability.</comment>

<file context>
@@ -491,39 +498,64 @@ export default defineLogicFunction({
 * 你可以在单个函数中混用多种触发器类型。
 
-### 安装后函数
+### Pre-install functions
 
-安装后函数是在你的应用安装到工作区后自动运行的逻辑函数。 这对于一次性设置任务很有用,例如填充默认数据、创建初始记录或配置工作区设置。
</file context>

Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

29 issues found across 72 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/frontend-commands.mdx">

<violation number="1" location="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/frontend-commands.mdx:80">
P3: This Turkish translation file now contains an English sentence, causing inconsistent localization. Keep the sentence in Turkish to match the rest of the page.</violation>
</file>

<file name="packages/twenty-docs/l/ru/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/ru/developers/extend/capabilities/apps.mdx:722">
P2: The code example has a malformed closing line (`});},{`) that breaks the snippet syntax.</violation>
</file>

<file name="packages/twenty-docs/l/cs/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/cs/twenty-ui/input/select.mdx:26">
P2: This Czech docs page now contains English example labels, which is a localization regression. Keep example UI strings in Czech for consistency within the `cs` translation.</violation>
</file>

<file name="packages/twenty-docs/l/pt/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/pt/developers/extend/capabilities/apps.mdx:501">
P2: Core explanatory sections were added in English instead of Portuguese, causing mixed-language documentation and degrading localized doc quality.</violation>
</file>

<file name="packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: The Portuguese documentation page now includes untranslated English sentences (and one mixed-language sentence), which breaks localization consistency for `l/pt` docs.</violation>
</file>

<file name="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: This Turkish documentation file includes untranslated English sentences; keep the locale content fully in Turkish for consistency and readability.</violation>
</file>

<file name="packages/twenty-docs/l/ro/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/ro/developers/extend/capabilities/apps.mdx:55">
P2: Romanian locale documentation now contains newly added English content, resulting in a partially untranslated page.</violation>
</file>

<file name="packages/twenty-docs/l/zh/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/zh/twenty-ui/input/select.mdx:26">
P3: The zh documentation example now contains English option text, which breaks locale consistency and makes the translated page partially untranslated.</violation>
</file>

<file name="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/best-practices-front.mdx">

<violation number="1" location="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/best-practices-front.mdx:9">
P3: This Italian docs file now includes newly added English content, causing an i18n consistency regression. Keep `l/it` content fully in Italian.</violation>
</file>

<file name="packages/twenty-docs/l/zh/developers/contribute/capabilities/frontend-development/best-practices-front.mdx">

<violation number="1" location="packages/twenty-docs/l/zh/developers/contribute/capabilities/frontend-development/best-practices-front.mdx:9">
P2: This `zh` localized doc now contains newly added English prose/headings, creating inconsistent localization and reducing readability for the target audience. Keep added narrative text in Chinese in this locale file.</violation>
</file>

<file name="packages/twenty-docs/l/ru/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/ru/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: This Russian locale page contains an untranslated English sentence. Keep locale files fully translated to avoid mixed-language documentation.</violation>
</file>

<file name="packages/twenty-docs/l/tr/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/tr/twenty-ui/input/select.mdx:26">
P2: The Turkish translation example now contains untranslated English UI strings, which regresses localization consistency in this docs page.</violation>
</file>

<file name="packages/twenty-docs/l/ar/twenty-ui/input/text.mdx">

<violation number="1" location="packages/twenty-docs/l/ar/twenty-ui/input/text.mdx:33">
P2: Arabic-locale docs now include English user-facing example text (`label`/`error`), causing inconsistent localization on this page. Keep example strings localized to Arabic in `l/ar` docs.</violation>

<violation number="2" location="packages/twenty-docs/l/ar/twenty-ui/input/text.mdx:88">
P2: The Arabic docs example was switched to English placeholder/value/log text, which makes localized documentation inconsistent. Translate these example strings to Arabic.</violation>
</file>

<file name="packages/twenty-docs/l/pt/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/pt/twenty-ui/input/select.mdx:26">
P2: The Portuguese documentation example was changed to English UI labels, causing inconsistent localization in the `pt` docs page.</violation>
</file>

<file name="packages/twenty-docs/l/de/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/de/developers/extend/capabilities/apps.mdx:55">
P2: The German docs page includes newly added English-only sections/comments, resulting in mixed-language localization. Please translate added English text to German to keep the `de` locale consistent and usable.</violation>
</file>

<file name="packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/frontend-commands.mdx">

<violation number="1" location="packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/frontend-commands.mdx:80">
P3: This German translation file introduces an English sentence, which breaks localization consistency. Translate this line to German.</violation>
</file>

<file name="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/best-practices-front.mdx">

<violation number="1" location="packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/best-practices-front.mdx:9">
P2: This Turkish documentation page now contains multiple newly added English strings, which creates an i18n regression and inconsistent reader experience in the `tr` locale.</violation>
</file>

<file name="packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/frontend-commands.mdx">

<violation number="1" location="packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/frontend-commands.mdx:80">
P3: This Portuguese translation file now contains an English sentence, creating inconsistent locale content. Translate this line to Portuguese to keep the `l/pt` docs coherent.</violation>
</file>

<file name="packages/twenty-docs/l/cs/developers/contribute/capabilities/frontend-development/frontend-commands.mdx">

<violation number="1" location="packages/twenty-docs/l/cs/developers/contribute/capabilities/frontend-development/frontend-commands.mdx:80">
P3: This Czech documentation page includes an English sentence, creating an incomplete translation and inconsistent locale experience.</violation>
</file>

<file name="packages/twenty-docs/l/it/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/it/twenty-ui/input/select.mdx:26">
P3: This Italian translation example contains newly added English UI strings, causing an i18n regression in localized documentation.</violation>
</file>

<file name="packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/hotkeys.mdx:172">
P3: This sentence mixes English and German instead of providing a single German translation, reducing readability and translation quality.</violation>
</file>

<file name="packages/twenty-docs/l/cs/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/cs/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: This Czech locale documentation now contains newly added English sentences, causing mixed-language content and inconsistent i18n output. Keep `l/cs` content fully Czech.</violation>
</file>

<file name="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/hotkeys.mdx">

<violation number="1" location="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/hotkeys.mdx:163">
P2: This Italian documentation page contains an English sentence, which breaks locale consistency and readability for Italian users.</violation>

<violation number="2" location="packages/twenty-docs/l/it/developers/contribute/capabilities/frontend-development/hotkeys.mdx:178">
P3: This line is not localized to Italian and should be translated to match the rest of the page.</violation>
</file>

<file name="packages/twenty-docs/l/zh/developers/extend/capabilities/apps.mdx">

<violation number="1" location="packages/twenty-docs/l/zh/developers/extend/capabilities/apps.mdx:501">
P3: Newly added content in the Chinese localization file is partially untranslated English, causing inconsistent i18n quality and reduced readability.</violation>
</file>

<file name="packages/twenty-docs/l/zh/twenty-ui/input/text.mdx">

<violation number="1" location="packages/twenty-docs/l/zh/twenty-ui/input/text.mdx:33">
P2: This zh-localized docs page now contains multiple English user-facing example strings, which is a localization regression and creates inconsistent documentation language for Chinese readers.</violation>
</file>

<file name="packages/twenty-docs/l/ro/twenty-ui/input/select.mdx">

<violation number="1" location="packages/twenty-docs/l/ro/twenty-ui/input/select.mdx:23">
P2: The Select usage example omits required prop `dropdownId`, making the snippet invalid for the current API.</violation>

<violation number="2" location="packages/twenty-docs/l/ro/twenty-ui/input/select.mdx:24">
P2: `className` is passed as boolean shorthand (`true`) instead of a string, so the docs example contradicts the component prop type.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

required: ['companyName'],
},
});
});},{
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: The code example has a malformed closing line (});},{) that breaks the snippet syntax.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/ru/developers/extend/capabilities/apps.mdx, line 722:

<comment>The code example has a malformed closing line (`});},{`) that breaks the snippet syntax.</comment>

<file context>
@@ -685,7 +719,7 @@ export default defineLogicFunction({
     required: ['companyName'],
   },
-});
+});},{

</file context>


</details>

```suggestion
});
Fix with Cubic

Comment on lines +26 to +30
label="Select an option"
options={[
{ value: 'option1', label: 'Option A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Option B', Icon: IconTwentyStar },
]}
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: This Czech docs page now contains English example labels, which is a localization regression. Keep example UI strings in Czech for consistency within the cs translation.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/cs/twenty-ui/input/select.mdx, line 26:

<comment>This Czech docs page now contains English example labels, which is a localization regression. Keep example UI strings in Czech for consistency within the `cs` translation.</comment>

<file context>
@@ -13,26 +13,23 @@ Umožňuje uživatelům vybrat hodnotu z nabídky předdefinovaných možností.
+    <Select
+      className
+      disabled={false}
+      label="Select an option"
+      options={[
+        { value: 'option1', label: 'Option A', Icon: IconTwentyStar },
</file context>
Suggested change
label="Select an option"
options={[
{ value: 'option1', label: 'Option A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Option B', Icon: IconTwentyStar },
]}
label="Vyberte možnost"
options={[
{ value: 'option1', label: 'Možnost A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Možnost B', Icon: IconTwentyStar },
]}
Fix with Cubic

* Você pode misturar vários tipos de gatilho em uma única função.

### Funções de pós-instalação
### Pre-install functions
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Core explanatory sections were added in English instead of Portuguese, causing mixed-language documentation and degrading localized doc quality.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/pt/developers/extend/capabilities/apps.mdx, line 501:

<comment>Core explanatory sections were added in English instead of Portuguese, causing mixed-language documentation and degrading localized doc quality.</comment>

<file context>
@@ -491,39 +498,64 @@ Notas:
 * Você pode misturar vários tipos de gatilho em uma única função.
 
-### Funções de pós-instalação
+### Pre-install functions
 
-Uma função de pós-instalação é uma função de lógica que é executada automaticamente após a sua aplicação ser instalada em um espaço de trabalho. Isso é útil para tarefas de configuração únicas, como preencher dados padrão, criar registros iniciais ou configurar as configurações do espaço de trabalho.
</file context>
Fix with Cubic

```

Internamente, o escopo atualmente selecionado é armazenado em um estado Recoil que é compartilhado por toda a aplicação :
Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: The Portuguese documentation page now includes untranslated English sentences (and one mixed-language sentence), which breaks localization consistency for l/pt docs.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/pt/developers/contribute/capabilities/frontend-development/hotkeys.mdx, line 163:

<comment>The Portuguese documentation page now includes untranslated English sentences (and one mixed-language sentence), which breaks localization consistency for `l/pt` docs.</comment>

<file context>
@@ -160,7 +160,7 @@ export enum PageHotkeyScope {

-Internamente, o escopo atualmente selecionado é armazenado em um estado Recoil que é compartilhado por toda a aplicação :
+Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :

</file context>
Fix with Cubic

```

Dahili olarak, şu anda seçili olan kapsam, uygulama genelinde paylaşılan bir Recoil durumunda saklanır:
Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: This Turkish documentation file includes untranslated English sentences; keep the locale content fully in Turkish for consistency and readability.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/tr/developers/contribute/capabilities/frontend-development/hotkeys.mdx, line 163:

<comment>This Turkish documentation file includes untranslated English sentences; keep the locale content fully in Turkish for consistency and readability.</comment>

<file context>
@@ -160,7 +160,7 @@ export enum PageHotkeyScope {

-Dahili olarak, şu anda seçili olan kapsam, uygulama genelinde paylaşılan bir Recoil durumunda saklanır:
+Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :

</file context>
Suggested change
Internally, the currently selected scope is stored in a Jotai atom that is shared across the application :
Dahili olarak, şu anda seçili kapsam uygulama genelinde paylaşılan bir Jotai atomunda saklanır:
Fix with Cubic

Comment on lines +26 to +30
label="Select an option"
options={[
{ value: 'option1', label: 'Option A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Option B', Icon: IconTwentyStar },
]}
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: This Italian translation example contains newly added English UI strings, causing an i18n regression in localized documentation.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/it/twenty-ui/input/select.mdx, line 26:

<comment>This Italian translation example contains newly added English UI strings, causing an i18n regression in localized documentation.</comment>

<file context>
@@ -13,26 +13,23 @@ Permette agli utenti di scegliere un valore da un elenco di opzioni predefinite.
+    <Select
+      className
+      disabled={false}
+      label="Select an option"
+      options={[
+        { value: 'option1', label: 'Option A', Icon: IconTwentyStar },
</file context>
Suggested change
label="Select an option"
options={[
{ value: 'option1', label: 'Option A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Option B', Icon: IconTwentyStar },
]}
label="Seleziona un'opzione"
options={[
{ value: 'option1', label: 'Opzione A', Icon: IconTwentyStar },
{ value: 'option2', label: 'Opzione B', Icon: IconTwentyStar },
]}
Fix with Cubic

```

Aber dieser Recoil-State sollte niemals manuell bearbeitet werden! Wir werden im nächsten Abschnitt sehen, wie man es verwendet.
But this atom should never be handled manually ! Wir werden im nächsten Abschnitt sehen, wie man es verwendet.
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: This sentence mixes English and German instead of providing a single German translation, reducing readability and translation quality.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/de/developers/contribute/capabilities/frontend-development/hotkeys.mdx, line 172:

<comment>This sentence mixes English and German instead of providing a single German translation, reducing readability and translation quality.</comment>

<file context>
@@ -169,10 +169,10 @@ export const currentHotkeyScopeState = createState<HotkeyScope>({

-Aber dieser Recoil-State sollte niemals manuell bearbeitet werden! Wir werden im nächsten Abschnitt sehen, wie man es verwendet.
+But this atom should never be handled manually ! Wir werden im nächsten Abschnitt sehen, wie man es verwendet.

Wie funktioniert es intern?

</file context>


</details>

```suggestion
Dieses Atom sollte jedoch niemals manuell verwaltet werden! Im nächsten Abschnitt sehen wir, wie man es verwendet.
Fix with Cubic

* 你可以在单个函数中混用多种触发器类型。

### 安装后函数
### Pre-install functions
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: Newly added content in the Chinese localization file is partially untranslated English, causing inconsistent i18n quality and reduced readability.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At packages/twenty-docs/l/zh/developers/extend/capabilities/apps.mdx, line 501:

<comment>Newly added content in the Chinese localization file is partially untranslated English, causing inconsistent i18n quality and reduced readability.</comment>

<file context>
@@ -491,39 +498,64 @@ export default defineLogicFunction({
 * 你可以在单个函数中混用多种触发器类型。
 
-### 安装后函数
+### Pre-install functions
 
-安装后函数是在你的应用安装到工作区后自动运行的逻辑函数。 这对于一次性设置任务很有用,例如填充默认数据、创建初始记录或配置工作区设置。
</file context>
Fix with Cubic

@charlesBochet charlesBochet merged commit 81698ff into main Feb 26, 2026
51 of 55 checks passed
@charlesBochet charlesBochet deleted the i18n-docs branch February 26, 2026 15:52
@github-actions
Copy link
Copy Markdown
Contributor Author

Fails
🚫

node failed.

Log

Details
�[31mError: �[39m SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
�[90m    at parseJSONFromBytes (node:internal/deps/undici/undici:6433:19)�[39m
�[90m    at successSteps (node:internal/deps/undici/undici:6414:27)�[39m
�[90m    at readAllBytes (node:internal/deps/undici/undici:5380:13)�[39m
�[90m    at process.processTicksAndRejections (node:internal/process/task_queues:103:5)�[39m
danger-results://tmp/danger-results-333f0df2.json

Generated by 🚫 dangerJS against 5ce2492

thomtrp pushed a commit that referenced this pull request Feb 26, 2026
Created by Github action

---------

Co-authored-by: github-actions <github-actions@twenty.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant