88 lines
2.0 KiB
Plaintext
88 lines
2.0 KiB
Plaintext
---
|
|
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 # --fix übergeben, um Lint-Fehler zu beheben
|
|
```
|
|
|
|
### Test
|
|
|
|
```
|
|
npx nx run twenty-server:test:unit # Unit-Tests ausführen
|
|
npx nx run twenty-server:test:integration # Integrationstests ausführen
|
|
```
|
|
|
|
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/)
|