---
title: Aplicații Twenty
description: Construiți și gestionați personalizările Twenty sub formă de cod.
---

<Warning>
Aplicațiile sunt în prezent în testare alfa. Caracteristica funcționează, dar este încă în dezvoltare.
</Warning>

## Ce sunt aplicațiile?

Aplicațiile vă permit să extindeți Twenty cu obiecte personalizate, câmpuri, funcții logice, componente front-end, abilități IA și altele — toate gestionate ca cod. În loc să configurați totul prin interfața de utilizator (UI), vă definiți modelul de date și logica în TypeScript și le implementați în unul sau mai multe spații de lucru.

**Ce puteți construi:**

* **Obiecte și câmpuri personalizate** — extindeți modelul de date cu entități noi sau adăugați câmpuri la obiecte existente, precum Companie sau Persoană
* **Funcții logice** — funcții pe partea de server declanșate de evenimente ale bazei de date, programări cron sau rute HTTP
* **Componente front-end** — componente React care se afișează în interfața Twenty (pagini de înregistrări, meniul de comenzi, panouri laterale)
* **Abilități și agenți IA** — extindeți IA din Twenty cu capabilități personalizate
* **Vizualizări și navigare** — vizualizări salvate preconfigurate și linkuri în bara laterală

## Pornire rapidă

```bash filename="Terminal"
npx create-twenty-app@latest my-twenty-app
cd my-twenty-app
yarn twenty dev
```

Aceasta creează scheletul unei aplicații noi, pornește opțional un server Twenty local și începe să monitorizeze fișierele pentru modificări. Consultați ghidul [Începeți](/l/ro/developers/extend/apps/getting-started) pentru prezentarea completă.

## Ghiduri detaliate

| Ghid                                                     | Descriere                                                                                                                                          |
| -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Începeți](/l/ro/developers/extend/apps/getting-started)      | Creați scheletul unei aplicații, configurați un server local, structură de proiect, CI                                                             |
| [Crearea aplicațiilor](/l/ro/developers/extend/apps/building) | Definiții ale entităților (`defineObject`, `defineLogicFunction`, `defineFrontComponent` etc.), clienți API, pachete npm, resurse publice, testare |
| [Publicare](/l/ro/developers/extend/apps/publishing)          | Implementare pe un server, publicare pe npm, marketplace                                                                                           |

## Concepte cheie

### Detectarea entităților

SDK-ul detectează entitățile scanând fișierele TypeScript pentru apeluri `export default define<Entity>({...})`. Denumirea fișierelor și structura folderelor sunt flexibile — detectarea este bazată pe AST, nu pe căi.

### Tipuri de entități disponibile

| Funcție                            | Scop                                                     |
| ---------------------------------- | -------------------------------------------------------- |
| `defineApplication()`              | Metadate ale aplicației (obligatoriu, una per aplicație) |
| `defineObject()`                   | Obiecte personalizate cu câmpuri                         |
| `defineField()`                    | Câmpuri pe obiecte existente                             |
| `defineLogicFunction()`            | Logică pe partea de server cu declanșatoare              |
| `defineFrontComponent()`           | Componente React în interfața Twenty                     |
| `defineRole()`                     | Roluri de permisiuni                                     |
| `defineView()`                     | Configurații pentru vizualizări salvate                  |
| `defineNavigationMenuItem()`       | Linkuri de navigare în bara laterală                     |
| `defineSkill()`                    | Abilități ale agentului IA                               |
| `defineAgent()`                    | Agenți IA cu prompturi                                   |
| `definePageLayout()`               | Dispuneri personalizate pentru paginile de înregistrare  |
| `definePreInstallLogicFunction()`  | Rulează înainte de instalarea aplicației                 |
| `definePostInstallLogicFunction()` | Rulează după instalarea aplicației                       |

### Flux de lucru pentru dezvoltare

1. **`yarn twenty dev`** — monitorizează fișierele sursă, reconstruiește la modificări, sincronizează cu serverul, generează clienți API tipizați
2. **`yarn twenty build`** — produce o versiune distribuibilă
3. **`yarn twenty deploy`** — implementează pe un server Twenty la distanță
4. **`yarn twenty add`** — generează interactiv o entitate nouă

### Referință CLI

```bash filename="Terminal"
yarn twenty help          # Listează toate comenzile
yarn twenty server start  # Pornește serverul local de dezvoltare
yarn twenty remote add    # Conectează-te la un server Twenty
yarn twenty exec -n fn    # Execută o funcție logică
yarn twenty logs -n fn    # Transmite în flux jurnalele funcției
```

Consultați ghidul [Începeți](/l/ro/developers/extend/apps/getting-started) pentru referința completă CLI.
