---
title: Backend Befehle
icon: terminal
---

## Nützliche Befehle

Diese Befehle sollten aus dem Verzeichnis packages/twenty-server ausgeführt werden.
Von jedem anderen Verzeichnis aus können Sie `npx nx {command} twenty-server` (oder `npx nx run twenty-server:{command}`) verwenden.

### Erstmalige Einrichtung

```
npx nx database:reset twenty-server # setup the database with dev seeds
```

### Server starten

```
npx nx run twenty-server:start
```

### Lint

```
npx nx run twenty-server:lint # pass --fix to fix lint errors
```

### Test

```
npx nx run twenty-server:test:unit          # run unit tests
npx nx run twenty-server:test:integration   # run integration tests
```

Hinweis: Sie können `npx nx run twenty-server:test:integration:with-db-reset` ausführen, falls Sie die Datenbank zurücksetzen müssen, bevor Sie die Integrationstests durchführen.

### Datenbank zurücksetzen

Wenn Sie die Datenbank zurücksetzen und seeden möchten, können Sie den folgenden Befehl ausführen:

```bash
npx nx run twenty-server:database:reset
```

### Migrationen

#### Für Objekte in Core/Metadata-Schemas (TypeORM)

```bash
npx nx run twenty-server:database:migrate:generate
```

## Technologie-Stack

Twenty verwendet in erster Linie NestJS für das Backend.

Prisma war das erste ORM, das wir verwendeten. Um Benutzern die Möglichkeit zu geben, benutzerdefinierte Felder und Objekte zu erstellen, war eine niedrigere Ebene sinnvoller, da wir eine feinkörnige Kontrolle benötigen. Das Projekt verwendet jetzt TypeORM.

So sieht der Tech-Stack jetzt aus.

**Kern**

* [NestJS](https://nestjs.com/)
* [TypeORM](https://typeorm.io/)
* [GraphQL Yoga](https://the-guild.dev/graphql/yoga-server)

**Datenbank**

* [Postgres](https://www.postgresql.org/)

**Externe Integrationen**

* [Sentry](https://sentry.io/welcome/) zum Verfolgen von Fehlern

**Tests**

* [Jest](https://jestjs.io/)

**Tools**

* [Yarn](https://yarnpkg.com/)
* [Oxlint](https://oxc.rs/docs/guide/usage/linter.html)

**Entwicklung**

* [AWS EKS](https://aws.amazon.com/eks/)
