Nützliche Befehle
Diese Befehle sollten aus dem Verzeichnis packages/twenty-server ausgeführt werden.
From any other folder you can run npx nx {command} twenty-server (or npx nx run twenty-server:{command}).
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
If you want to reset and seed the database, you can run the following command:
npx nx run twenty-server:database:reset
Migrationen
npx nx run twenty-server:typeorm migration:generate src/database/typeorm/core/migrations/nameOfYourMigration -d src/database/typeorm/core/core.datasource.ts
Für Arbeitsbereichsobjekte
Es gibt keine Migrationsdateien, Migrationen werden automatisch für jeden Arbeitsbereich generiert,
in der Datenbank gespeichert und mit diesem Befehl angewendet
npx nx run twenty-server:command workspace:sync-metadata -f
This will drop the database and re-run the migrations and seed.Stellen Sie sicher, dass Sie alle Daten sichern, die Sie aufbewahren möchten, bevor Sie diesen Befehl ausführen.
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.
Here’s what the tech stack now looks like.
Kern
Datenbank
Externe Integrationen
- Sentry zum Verfolgen von Fehlern
Tests
Tools
Entwicklung