---
title: Scaffolding
description: Generieren Sie Entitätsdateien interaktiv mit yarn twenty dev:add — Objekte, Felder, Ansichten, Logikfunktionen und mehr.
icon: wand-magic-sparkles
---

Anstatt Entitätsdateien manuell zu erstellen, können Sie den interaktiven Scaffolder verwenden:

```bash filename="Terminal"
yarn twenty dev:add
```

Er fordert Sie auf, einen Entitätstyp auszuwählen, führt Sie durch die erforderlichen Felder und schreibt anschließend eine einsatzbereite Datei mit einem stabilen `universalIdentifier` und dem korrekten `defineEntity()`-Aufruf.

Sie können den Entitätstyp auch direkt übergeben, um die erste Eingabeaufforderung zu überspringen:

```bash filename="Terminal"
yarn twenty dev:add object
yarn twenty dev:add logicFunction
yarn twenty dev:add frontComponent
```

## Verfügbare Entitätstypen

| Entitätstyp                | Befehl                                   | Generierte Datei                                        |
| -------------------------- | ---------------------------------------- | ------------------------------------------------------- |
| Objekt                     | `yarn twenty dev:add object`             | `src/objects/\<name>.ts`               |
| Feld                       | `yarn twenty dev:add field`              | `src/fields/\<name>.ts`                |
| Logikfunktion              | `yarn twenty dev:add logicFunction`      | `src/logic-functions/\<name>.ts`       |
| Frontend-Komponente        | `yarn twenty dev:add frontComponent`     | `src/front-components/\<name>.tsx`     |
| Rolle                      | `yarn twenty dev:add role`               | `src/roles/\<name>.ts`                 |
| Skill                      | `yarn twenty dev:add skill`              | `src/skills/\<name>.ts`                |
| Agent                      | `yarn twenty dev:add agent`              | `src/agents/\<name>.ts`                |
| Ansicht                    | `yarn twenty dev:add view`               | `src/views/\<name>.ts`                 |
| Navigationsmenüeintrag     | `yarn twenty dev:add navigationMenuItem` | `src/navigation-menu-items/\<name>.ts` |
| Seitenlayout               | `yarn twenty dev:add pageLayout`         | `src/page-layouts/\<name>.ts`          |
| Seitenlayout-Registerkarte | `yarn twenty dev:add pageLayoutTab`      | `src/page-layout-tabs/\<name>.ts`      |
| Befehlsmenü-Eintrag        | `yarn twenty dev:add commandMenuItem`    | `src/command-menu-items/\<name>.ts`    |
| Ansichtsfeld               | `yarn twenty dev:add viewField`          | `src/view-fields/\<name>.ts`           |
| Verbindungsanbieter        | `yarn twenty dev:add connectionProvider` | `src/connection-providers/\<name>.ts`  |

## Was der Scaffolder generiert

Jeder Entitätstyp hat seine eigene Vorlage. Zum Beispiel fragt `yarn twenty dev:add object` nach:

1. **Name (Singular)** — z. B. `invoice`
2. **Name (Plural)** — z. B. `invoices`
3. **Label (Singular)** — automatisch aus dem Namen befüllt (z. B. `Invoice`)
4. **Label (Plural)** — automatisch befüllt (z. B. `Invoices`)
5. **Ansicht und Navigationseintrag erstellen?** — wenn Sie mit Ja antworten, erzeugt der Scaffolder außerdem eine passende Ansicht und einen Sidebar-Link für das neue Objekt.

Andere Entitätstypen haben einfachere Eingabeaufforderungen — die meisten fragen nur nach einem Namen.

Der Entitätstyp `field` ist detaillierter: Er fragt nach Feldname, Label, Typ (aus einer Liste aller verfügbaren Feldtypen wie `TEXT`, `NUMBER`, `SELECT`, `RELATION` usw.) sowie dem `universalIdentifier` des Zielobjekts.

## Benutzerdefinierter Ausgabepfad

Verwenden Sie den Schalter `--path`, um die generierte Datei an einem benutzerdefinierten Ort abzulegen:

```bash filename="Terminal"
yarn twenty dev:add logicFunction --path src/custom-folder
```
